【发布时间】:2009-06-25 05:40:41
【问题描述】:
正如标题所示,我在编译基于 MFC 的应用程序时遇到问题,此问题在安装 windows server 2003 平台 SDK 后立即开始,现在即使我尝试编译新的 MFC 项目,我也会收到以下错误:
c:\程序文件\微软平台 sdk\include\zmouse.h(141):错误 C2146:语法错误:缺少“;” 在标识符“HwndMSWheel”之前
1>c:\程序文件\微软平台 sdk\include\zmouse.h(141):错误 C2433:“HWND”:“内联”不允许 关于数据声明
1>c:\程序文件\微软平台 sdk\include\zmouse.h(141):错误 C4430:缺少类型说明符 - int 假定。注意:C++ 不支持 默认整数
1>c:\程序文件\微软平台 sdk\include\zmouse.h(142):错误 C2065:“PUINT”:未声明的标识符
1>c:\程序文件\微软平台 sdk\include\zmouse.h(142):错误 C2146:语法错误:缺少')' 在标识符之前 'puiMsh_MsgMouseWheel'
1>c:\程序文件\微软平台 sdk\include\zmouse.h(142):错误 C4430:缺少类型说明符 - int 假定。注意:C++ 不支持 默认整数
1>c:\程序文件\微软平台 sdk\include\zmouse.h(147):错误 C2059: 语法错误:')'
1>c:\程序文件\微软平台 sdk\include\zmouse.h(148):错误 C2143:语法错误:缺少“;” 在'{'之前
1>c:\程序文件\微软平台 sdk\include\zmouse.h(148):错误 C2447:“{”:缺少函数头 (旧式的正式列表?)
1>c:\程序文件\微软平台 sdk\include\commctrl.h(29):错误 C2146:语法错误:缺少“;” 在标识符“HRESULT”之前
1>c:\程序文件\微软平台 sdk\include\commctrl.h(29):错误 C4430:缺少类型说明符 - int 假定。注意:C++ 不支持 默认整数
1>c:\程序文件\微软平台 sdk\include\commctrl.h(29):错误 C4430:缺少类型说明符 - int 假定。注意:C++ 不支持 默认整数
1>c:\程序文件\微软平台 sdk\include\prsht.h(97):错误 C2065: 'CALLBACK' : 未声明的标识符
1>c:\程序文件\微软平台 sdk\include\prsht.h(97):错误 C2065: 'LPFNPSPCALLBACKA':未声明 标识符
1>c:\程序文件\微软平台 sdk\include\prsht.h(97):错误 C4430: 缺少类型说明符 - 假定为 int。 注意:C++ 不支持 default-int
1>c:\程序文件\微软平台 sdk\include\prsht.h(97) : 致命错误 C1903:无法从先前的恢复 错误;停止编译
在某些情况下,我通过包含 windows.h 并在 stdafx.h 的顶部定义 WIN32_LEAN_AND_MEAN 来解决问题。然而,对于使用静态和动态链接到其他库的大型项目,建议的解决方案不起作用。我不确定为什么会发生这种情况,因为我也尝试重新安装平台 SDK 无济于事。
感谢任何帮助。
感谢:)
【问题讨论】:
标签: visual-studio-2005 sdk compilation