P/Invokeをお便利に?

ここのところ、C#でコードを書くことが多くなってきてます。

マネージドコードだけで書ければ、それが一番幸せなのですが…残念ながら、現状では動的ライブラリ(DLL)内のネイティブコードを呼び出さないとどうしょうもない壁に結構ぶちあたります :|

そんな時に使うのが、P/Invoke(Platform Invoke、プラットフォーム呼び出し)なんですが…結構、面倒臭いんですね~コレが。

まぁ、pinvoke.netで調べるのが王道なんですかね :?:

ブラウザでpinvoke.netにアクセスして、検索とかで調べて~コードをコピペするという結構面倒な手間を楽にしてくれるのが…Red Gate Softwareが提供してくれているVisual Studio内から、直接pinvoke.netへアクセスできるようにしてくれるVSアドオンです ;) このアドオンは、メールアドレスなどの登録は必要ですが…試用期限もなくフリーで利用できます。

VSのメニューから以下のようなダイアログを呼び出し、検索して即コードを挿入できるので非常に快適になります。

Invoke Addon

あと、ローカルで動作するPInvoke Interop Assistantというツールもなかなかお薦めです ;)

大きく3つの機能を持っていて、それぞれ以下のような感じで使えます。

Invoke Spy

EXEやDLLを開いて、その中で使われているアンマネージ・シグネチャの一覧が表示できます :!:

Invoke Search

定数やAPIを検索して、P/Invoke用のコードを表示できます :!:

Invoke Code

P/Invokeしたいネイティブコードから、P/Invoke用のコードを表示できます :!:

でも、たまにナイものがあるんですよね~ :cry:

Be Sociable, Share!

TrackBack URL :

No comments yet. Be the first.

Leave a reply