C#から未登録のDLLを使用するにはどうすればよいですか?
-
03-10-2019 - |
質問
C#を介してアクセスする必要があるカスタムDLL(登録されていません)があります。 DLLを登録せずにこれを行うにはどうすればよいですか?
編集:C ++ DLLです。
解決
見る 登録フリーCOM Interop:
登録フリーCOM Interopは、Windowsレジストリを使用してアセンブリ情報を保存せずにコンポーネントをアクティブにします。展開中にコンピューターをコンピューターに登録する代わりに、バインディングとアクティベーションに関する情報を含む設計時にWin32スタイルのマニフェストファイルを作成します。レジストリキーではなく、これらのマニフェストファイルは、オブジェクトのアクティブ化を指示します。
展開中に登録する代わりに、アセンブリに登録なしのアクティベーションを使用することで、2つの利点があります。
- コンピューターに複数のバージョンがインストールされている場合、どのDLLバージョンがアクティブになっているかを制御できます。
- エンドユーザーは、XcopyまたはFTPを使用して、アプリケーションをコンピューター上の適切なディレクトリにコピーできます。その後、アプリケーションはそのディレクトリから実行できます。
他のヒント
P/Invokeを介してこのDLLからエクスポートされた関数を使用したいと思いますか?その場合、exeファイルと同じフォルダーにdllをコピーする必要があります。次に、使用するC ++ DLLの関数のC#宣言を書きます。見る dllimportattribute.
所属していません StackOverflow