C#で書いています。
Windows に属していない管理されていない dll で使用できるメソッド/関数を見つけるにはどうすればよいですか?
例 : 私のコンピュータにはいくつかのソフトウェアがインストールされており、それには dll が含まれています。そのソフトウェアに接続するためのコードを作成するためのオプションを知りたいですか?
5 に答える
参照がないネイティブ DLL の場合は、Visual Studio SDK の dumpbin ユーティリティを使用して、DLL 内のエクスポートされた関数のリストを抽出できます。
Dumpbin リファレンスはこちら: http://msdn.microsoft.com/en-us/library/c1h23y6c(VS.71).aspx
また、正しい P/Invoke 署名を見つけることと組み合わせて dumpbin を使用する方法に関する追加の詳細を提供する CodeProject ページは、次のとおりです。
Depends.exe(VSに付属)を使用します。
Dependsは、Pinvokeを使用してマネージコードから呼び出すことができるすべてのエクスポートされた関数を表示します。
PInvoke.netは、.NET 相互運用のための優れたリソースです。Windows ネイティブ ライブラリで使用できる関数だけでなく、.NET コードで使用する必要がある署名も一覧表示されます。
それがVB6 COM コンポーネントのようなCOM アセンブリである場合Object Explorer
、Visual Studioで参照できることを追加したいと思います。
独自の DLL も処理できる PInvoke Interop Assistant に関するブログを読みました http://www.codeplex.com/clrinterop/Release/ProjectReleases.aspx?ReleaseId=14120