私が書いたdllに存在するいくつかのC++コードを呼び出す必要があるWPFアプリケーションを作成しています。私は、最も基本的なテスト機能を備えていても、常にPInvokeStackImbalanceエラーを表示しています。例えば、C++のdll:C#からdll関数を呼び出すときのPInvokeStackバランスの不一致
extern "C" __declspec(dllexport) void Test(int foo);
この関数は何もしません。 C#の方は、次のようになります
[DllImport("myDll.dll", CharSet = CharSet.Auto)]
private static extern void Test(int foo);
そして、私はそうのように、このC#の関数を呼び出す:
テスト(1)
を...と私はPInvokeStackImbalanceを入手します!どうすればいいの?事前に
おかげで...
トム
この解決策は、同じ問題の「FORTRAN」にも当てはまります。 '!DEC $ ATTRIBUTES C :: myproc'を発行するだけです。 – ja72