この記事では、完全かつ詳細な DLL 作成手順と PHP 呼び出しメソッドを含む、C# で開発された DLL クラス ライブラリを PHP で呼び出す方法を主に紹介します。必要な友人は参照できます。それに
C# で書かれた DLL など、PHP で他の言語で書かれた DLL ライブラリを使用する必要がある場合があります。その方法は、呼び出す前に、まず DLL ライブラリを登録して PHP の新しい COM メソッドを使用することです。アセンブリをグローバル キャッシュに保存します。
1. C# クラス ライブラリを作成し、HelloWorld という名前を付けます
2. プロジェクトのプロパティを開き、左側 (最初のタブ) の [アプリケーション] をクリックし、ポップアップ ダイアログで [アセンブリ情報] ボタンをクリックし、一番下のボックスにチェックを入れる必要があります: アセンブリを COM 可視にする。 ! それ以外の場合、この DLL は COM モードでアクセスできません (コード内のクラス宣言に [ComVisible(true)] を記述することもできますが、効果は同じであり、System.Runtime.InteropServices; 参照を使用して追加する必要があります。 )
3. 強力な名前付き署名ファイルを作成して使用します
vs.net の「Vsitual Studio .Net ツール」を使用します -->Visual Studio .Net コマンド プロンプトで sn -k d:HelloWorld.snk と入力し、Enter キーを押して、強力な名前付き署名ファイルを作成します
プロジェクトのプロパティを開き、左側の「署名」をクリックし、「アセンブリに署名する」にチェックを入れて、「厳密な名前のキー ファイルを選択する」を選択します:
4. クラスライブラリを作成し、dllにコンパイルします
コードをコピーします。コードは次のとおりです:
名前空間 HelloWorld
{
//[ComVisible(true)] // または Application-Assembly_Information ダイアログで「Assembly COM-Visible」をチェックします ;
公開授業 こんにちは
{
パブリック文字列 Write()
{
「Hello World」を返します;
}
}
}
5. dllフォルダーのパスを見つけて、vs.netの「Vsitual Studio .Netツール」を使用します-->Visual Studio .Netコマンドプロンプト
dllフォルダーに入り、次のように入力します:
コードをコピーします。コードは次のとおりです:
HelloWorld.dll を再起動
現時点では、この .dll の .net アセンブリは標準 Com コンポーネントになりますが、まだ使用することはできません。グローバル Com コンポーネントに変換する必要があります。
アセンブリをグローバル アセンブリ キャッシュに追加しますプロンプトウィンドウに入り、次のように入力します:
コードをコピーします。コードは次のとおりです:
gacutil /I HelloWorld.dll
この時点で、DLL はグローバル アセンブリ キャッシュにコピーされます。つまり、この DLL コンポーネントは、このコンピューター上のどのハード ドライブに関係なく使用できます。
厳密な名前の署名が実行されていない場合、このステップでは読み込み失敗が表示されます
コードをコピーします。コードは次のとおりです:
$r=new Com("HelloWorld.Hello");
$s=$r->Write();
エコー$s;
?>
コマンド:
コードをコピーします。コードは次のとおりです:
CD [/D] [ドライブ:][パス] #指定したパスを入力してください
CD [..] #親ディレクトリに戻る
http://www.bkjia.com/PHPjc/852822.html