[DllImport("DoSomething.dll", EntryPoint = "something_dump", SetLastError = true)] private static extern void something_dump(IntPtr ダンパー);
XP マシンでこの DLLImport を実行すると正常に動作しますが、Vista では例外が発生します。
DLL 'DoSomething.dll' を読み込めません: 指定されたモジュールが見つかりませんでした。(HRESULT からの例外: 0x8007007E)
両方のマシンで Windows/System32 ディレクトリにありますが、何らかの理由で Vista がロードしません。
そして、Vista マシンのパスを完全に修飾すると ...DllImport("C:\WINDOWS\system32\DoSomething.dll"... 動作します!
実際に、Vista マシンの DLLImport 関数に system32 ディレクトリを参照するように指示する必要がありますか?