2012-08-13 73 views
3

我使用VS2008和項目性質的(活動)64_WIN64沒有在64位項目中定義

設置和奇怪的是沒有定義_WIN64和wParam和lParam仍然是32位。

我應該手動定義_WIN64嗎?

如果是這樣,我應該在哪裏放置#define _WIN64?預處理器設置似乎不起作用。

我很確定它編譯爲x64,因爲在任務管理器中exe文件沒有* 32後綴。

+0

我已經在vs2010中測試過。 _WIN64已被定義。請檢查您的項目配置。 – oldmonk 2012-08-13 05:56:15

回答

3

事情是,

_WIN64已由編譯器定義,但IDE無法識別它。 (似乎固定在VS2010)

的sizeof(WPARAM)和sizeof(LPARAM)的值均爲8(未4)

IDE將表示* IFDEF _WIN64代碼*塊用灰色,就好像它們不活躍,不是。

http://bugs.python.org/issue1558

+1

我仍然在VS2010中看到IDE問題 – 2015-07-24 17:19:19

2

根據微軟的說法,在VS2008中,您應該自己將其設置在預處理器定義中 - 對於調試版本和發佈版本 - 請看here

+0

是的,我實際上閱讀文章並添加_WIN64但沒有工作。這裏是命令行:/ Od/D「_WIN64」/ D「_UNICODE」/ D「UNICODE」/ Gm/EHsc/RTC1/MDd/Fo「x64 \ Debug \\」/Fd"x64\Debug\vc90.pdb 「/ W3/nologo/c/Zi/TP/errorReport:提示 – 2012-08-13 06:05:48

+0

那麼,你在設置之後做了重建嗎?我不確定VS會自動執行,我認爲這是必需的。 – 2012-08-13 06:21:02

相關問題