• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C#からDLLの呼び出し方)

C#からDLLの呼び出し方

このQ&Aのポイント
  • C#からDLLの呼び出し方法についての質問です。Visual Studio 2008 Express EditionとC# 3.5を使用しています。参考にしたページでは、C++からはMySub関数を呼び出すことができたようですが、C#から呼び出そうとするとエラーが発生してしまいます。具体的には、DllImport属性の記述の際にWINAPIが認識されていないというエラーが表示されます。どのように記述すればよいでしょうか。
  • C#とC++でDLLの呼び出し方が異なることに悩んでいます。Visual Studio 2008 Express EditionとC# 3.5を使用しています。参考にしたページでは、C++の場合はDLLを呼び出すためのヘッダーファイルが使用されていましたが、C#ではWINAPIが認識されていないというエラーが発生してしまいます。WINAPIの記述方法を教えていただきたいです。
  • C#からDLLを呼び出す際にWINAPIが認識されていないエラーが発生してしまいます。Visual Studio 2008 Express EditionとC# 3.5を使用しています。参考にしたページでは、C++の場合はヘッダーファイルを使用することで問題なくDLLを呼び出せたようですが、C#ではどのようにWINAPIを記述すればよいのでしょうか。具体的な方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

C#では,WINAPIマクロは存在しません (呼び出し規約はDllImportで指定します)。 > [System.Runtime.InteropServices.DllImport("a.dll")] > extern int WINAPI MySub(int a, int b); ではなく, [System.Runtime.InteropServices.DllImport("a.dll")] static extern int MySub (int a, int b); のようになります。

takagoo100
質問者

お礼

ご返答ありがとうございます。 参考になりました。