2011-11-15 52 views
3

從C#應用程序(Visual Studio 2008)中,我使用DllImport調用win32 dll。在Windows XP中一切正常。但是,當我在Windows 7中使用相同的exe和dll時,win32 dll無法加載。我是否需要編寫任何額外的代碼來從Windows 7調用win32 dll?如何在Windows 7中調用win32 dll

+1

XP 32bit和Windows 7 64bit? –

回答

8

在構建C#程序之前,請確保在Visual Studio Configuration Manager中選擇「x86」而不是「任何CPU」作爲平臺。如果選擇了任何CPU,則C#應用程序將在Windows 7中以64位進程運行,並嘗試將32位win32 dll加載到64位進程中,這會失敗,如herehere所述。

2

是你的Windows 7 64位?

你的.NET exe文件標記爲AnyCPU嗎?

如果上述答案是肯定的,那麼您需要通過Visual Studio中的配置管理器將.exe標記爲x86。

相關問題