2009-06-25 37 views
1

由於標題顯示我在編譯基於MFC的應用程序時遇到了問題,所以在安裝Windows Server 2003平臺SDK後立即啓動此問題,嘗試編譯一個新的MFC項目中,我得到了以下錯誤:問題在安裝Windows Server 2003 SP1的微軟平臺SDK後,在VS 2005中編譯問題

C:\ Program Files文件\ Microsoft平臺 SDK \包括\ zmouse.h(141):錯誤 C2146:語法錯誤:缺少 ';' 之前識別符 'HwndMSWheel'

1> C:\程序文件\ Microsoft平臺 SDK \包括\ zmouse.h(141):錯誤 C2433: 'HWND': '內聯' 不包括數據的聲明

允許

1> c:\ program files \ microsoft platform sdk \ include \ zmouse.h(141):error C4430:缺少類型說明符 - 假設爲int 。注意:C++不支持 默認int

1> C:\程序文件\ Microsoft平臺 SDK \包括\ zmouse.h(142):錯誤 C2065:PUINT':未聲明的標識符

1> C:\程序文件\ Microsoft平臺 SDK \包括\ zmouse.h(142):前標識符 'puiMsh_MsgMouseWheel'

1> C ^缺少 ')' :\程序錯誤 C2146:語法錯誤files \ microsoft platform sdk \ include \ zmouse.h(142):error C4430:缺少類型說明符 - 假定爲int 。注意:C++不支持 默認int

1> C:\程序文件\ Microsoft平臺 SDK \包括\ zmouse.h(147):錯誤 C2059:語法錯誤: ')'

1> c:\ program files \ microsoft platform sdk \ include \ zmouse.h(148):error C2143:語法錯誤:缺少';' 之前 '{'

1> C:\ Program Files文件\ Microsoft平臺 SDK \包括\ zmouse.h(148):錯誤 C2447: '{':缺少函數頭 (舊式正式列表? )

1> c:\ program files \ microsoft platform sdk \ include \ commctrl.h(29):error C2146:語法錯誤:缺少';' 之前識別符 'HRESULT'

1> C:\程序文件\ Microsoft平臺 SDK \包括\ commctrl.h(29):錯誤 C4430:缺少類型說明 - 詮釋 假定。注意:C++不支持 默認int

1> C:\ Program Files文件\ Microsoft平臺 SDK \ \包括commctrl.h(29):錯誤 C4430:缺少類型說明符 - 詮釋 承擔。注意:C++不支持 默認int

1> C:\程序文件\ Microsoft平臺 SDK \包括\ prsht.h(97):錯誤C2065: 'CALLBACK':未聲明的標識符

1> C:\程序文件\ Microsoft平臺 SDK \包括\ prsht.h(97):錯誤C2065: 'LPFNPSPCALLBACKA:未聲明的 標識符

1> C:\程序文件\ Microsoft平臺 SDK \包括\ prsht.h(97):錯誤C4430: 缺少類型說明符 - int a ssumed。 注意:C++不支持默認int

1> C:\程序文件\ Microsoft平臺 SDK \包括\ prsht.h(97):致命錯誤 C1903:無法從先前 錯誤中恢復(S );停止編譯

在某些情況下我通過包含windows.h並在stdafx.h的頂部定義了WIN32_LEAN_AND_MEAN來解決了這個問題。但是,對於使用靜態和動態鏈接到其他庫的大型項目,建議的解決方案不起作用。我不確定爲什麼會發生這種情況,因爲我也嘗試重新安裝平臺SDK無濟於事。

任何幫助表示讚賞。

感謝名單:)

回答

1

你確定zmouse.h

之前#包括WINDOWS.H