2012-03-04 36 views
1

当我在VS2010中创建新的C++控制台应用程序(MFC复选框已选中)时,我在编译过程中与prsht.hzmouse.hcommctrl.h有很多错误。创建新的C++控制台应用程序后出现错误

我没有不是改变这个文件中的任何东西,所以我不知道什么是错的。这是什么文件,以及如何编译程序没有错误?

很少有很多错误(113)

错误13错误C1903的:无法从先前的错误(多个)恢复;停止编译c:\ program files(x86)\ microsoft sdks \ windows \ v7.0a \ include \ prsht.h 97 1 qwert

错误10错误C2065:'CALLBACK':未声明的标识符c:\ program files(x86 )\ microsoft sdks \ windows \ v7.0a \ include \ prsht.h 97 1 qwert

19智能感知:期望a';' c:\ program files(x86)\ microsoft sdks \ windows \ v7.0a \ include \ commctrl.h 165 21

错误2错误C2433:数据声明中不允许使用'HWND':'inline'c:\ program文件(x86)\微软的SDK \ WINDOWS \ v7.0a \包括\ zmouse.h 141 1 QWERT

+0

因此,使用VS2010,我创建了一个EMP ty Visual C++控制台应用程序,并选中“MFC头”。我有一个非常基本的编译好的shell。你有没有增加更多的项目?确保你没有使用任何VS Express版本。 – 2012-05-22 18:58:55

回答

1

你可以试试下面包括了在之前的#include stdafx.h中的文件 “targetver.h” 语句

#include "Winsock2.h" 
#include "Windows.h" 

#include "targetver.h" 
0

这些错误发生,因为编译器会将符号CALLBACKHWND等新的,它不知道他们。 这些符号在windows.h头文件中定义。 所以诊断是:windows.h was not included。 这可能是因为损坏的SDK文件而发生的,所以您需要重新安装SDK。

在我的电脑中的头文件包含在以下链: stdafx.h - afxwin.h - afx.h - afxver_.h - afxv_w32.h - windows.hzmouse.hcommctrl.h

不能包括windows.h明确的(因为它是以前所建议的),因为afxv_w32.h文件有以下内容在行开始:

#ifdef _WINDOWS_ 
    #error WINDOWS.H already included. MFC apps must not #include <windows.h> 
#endif 

你可以看看这个:http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/fff0ebaa-5153-40b9-89cf-cb9661abb2a4/

相关问题