簡體   English   中英

關於Win7 64位的問題

[英]Question about Win7 64 bit

我有一個加載DLL的32位C ++ / MFC應用程序(X)。

我還有另一個加載相同DLL的32位.NET 3.5應用程序(Y)。

當我在Windows 7 64位環境下測試這些應用程序時,X會毫無問題地加載DLL。 但是,Y一旦嘗試從DLL調用函數就會崩潰。

我的問題是:如何使Y正常工作。

我是否需要某種特殊命令來表明它是32位DLL?

提前致謝!

問候,

傑弗龍納

通常,當事情“崩潰”時,會出現錯誤消息。 此錯誤消息通常很有用。 在沒有此消息的情況下,我只能猜測。

我猜想您的.net應用以“ AnyCPU”為目標,因此在64位計算機上,它作為64位進程運行。 64位進程無法加載32位DLL。 如果將其切換為“ 32位”目標,則它將再次運行。

或者,您可以將DLL編譯為64位,但這可能會更棘手。

如果將.Net應用程序編譯為平台無關的,則它將在32位平台上以32位和64位平台上以64位的形式執行您的應用。

在后一種情況下,您的應用程序嘗試加載32位DLL時可能會崩潰,因為64位應用程序只能加載64位DLL。

明確將您的.Net應用編譯為32位。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM