Visual Studio 2010 error C2065: '_In_opt_z_' : undeclared identifier 编译错误
2014-02-08 10:50
981 查看
当用Visual Studio 2010 编译时 发生如下编译错误:
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2065: '_In_opt_z_' : undeclared identifier
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2143: syntax error : missing ')' before 'const'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): warning C4229: anachronism used : modifiers on data are ignored
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2182: '_invoke_watson' : illegal use of type 'void'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2495: '_invoke_watson' : '__declspec(noreturn)' can only be applied to function declarations or definitions
。。。
。。。
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(96): error C2144: syntax error : 'int' should be preceded by ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(96): error C2448: 'isupper' : function-style initializer appears to be a function definition
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(96): error C2059: syntax error : ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2144: syntax error : 'int' should be preceded by ';'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2065: '_In_' : undeclared identifier
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2144: syntax error : 'int' should be preceded by ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2448: '_isupper_l' : function-style initializer appears to be a function definition
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2146: syntax error : missing ';' before identifier '_locale_t'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2059: syntax error : ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2144: syntax error : 'int' should be preceded by ';'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2065: '_In_' : undeclared identifier
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2144: syntax error : 'int' should be preceded by ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2448: 'islower' : function-style initializer appears to be a function definition
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2059: syntax error : ')'
。。。
这是由于WDK中的sal.h文件和Visual Studio中的sal.h文件冲突了。
由于Visual Studio 2010中的sal.h文件比较新,因此产生了这个错误。
解决方法:
1.删除WDK中的sal.h
2.重命名WDK中的sal.h
3.把Visual Studio 2010中的sal.h copy到WDK目录中 覆盖WDK的sal.h
WDK sal.h的位置在:C:\WinDDK\7600.16385.0\inc\api\sal.h
4. 将C:\Program Files\Microsoft Visual Studio 10.0\VC\include;
放在它C:\WinDDK\7600.16385.1\inc\api前面,即可
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2065: '_In_opt_z_' : undeclared identifier
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2143: syntax error : missing ')' before 'const'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): warning C4229: anachronism used : modifiers on data are ignored
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2182: '_invoke_watson' : illegal use of type 'void'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2495: '_invoke_watson' : '__declspec(noreturn)' can only be applied to function declarations or definitions
。。。
。。。
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(96): error C2144: syntax error : 'int' should be preceded by ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(96): error C2448: 'isupper' : function-style initializer appears to be a function definition
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(96): error C2059: syntax error : ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2144: syntax error : 'int' should be preceded by ';'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2065: '_In_' : undeclared identifier
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2144: syntax error : 'int' should be preceded by ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2448: '_isupper_l' : function-style initializer appears to be a function definition
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2146: syntax error : missing ';' before identifier '_locale_t'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(97): error C2059: syntax error : ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2144: syntax error : 'int' should be preceded by ';'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2065: '_In_' : undeclared identifier
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2144: syntax error : 'int' should be preceded by ')'
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2448: 'islower' : function-style initializer appears to be a function definition
2>C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h(98): error C2059: syntax error : ')'
。。。
这是由于WDK中的sal.h文件和Visual Studio中的sal.h文件冲突了。
由于Visual Studio 2010中的sal.h文件比较新,因此产生了这个错误。
解决方法:
1.删除WDK中的sal.h
2.重命名WDK中的sal.h
3.把Visual Studio 2010中的sal.h copy到WDK目录中 覆盖WDK的sal.h
WDK sal.h的位置在:C:\WinDDK\7600.16385.0\inc\api\sal.h
4. 将C:\Program Files\Microsoft Visual Studio 10.0\VC\include;
放在它C:\WinDDK\7600.16385.1\inc\api前面,即可
相关文章推荐
- Visual Studio 2010 error C2065: '_In_opt_z_' : undeclared identifier 编译错误
- Visual Studio 2010 error C2065: '_In_opt_z_' : undeclared identifier 编译错误
- Visual Studio 2010 error C2065: '_In_opt_z_' : undeclared identifier 编译错误
- Visual Studio 2010 error C2065: '_In_opt_z_' : undeclared identifier 编译错误
- error C2065: 'CString' : undeclared identifier错误的处理方法
- VC++中出现错误“ error c2065 'printf' undeclared identifier”的处理方法
- MS Visual Studio 2008 编译错误 microsoft visual studio 9.0\vc\include\new.h(60) : error C2065: '_In_opt_
- Visual Studio 2012 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案(转载)
- linux C 编译错误 error: ‘EOWNERDEAD’ undeclared (first use in this function)
- 编译错误:syntax error : identifier '__RPC__in'
- VS2008下编译错误(error C2065: '_S1max' : undeclared identifier)的解决办法
- 调用FindFirstVolume编译错误是undeclared identifier,怎么回事?
- 在visual studio 2010上编译一个项目时系统报错,提示了问题补充的错误信息
- VS2003编译OGRE error C2065: '__in' : undeclared identifier 解决
- Visual studio 之常见编译错误(1):syntax error : missing ';' before identifier 'PVOID64'
- 'HCRYPTHASH' : undeclared identifier 类似错误的解决办法
- error C2065: '_beginthread' : undeclared identifier错误处理
- error C2065: 'AfxCriticalTerm' : undeclared identifier 解决办法
- MySQL 编译出现 error: 'SSL_OP_NO_COMPRESSION' undeclared (first use in this function) 错误
- VC++中出现错误“ error c2065 'printf' undeclared identifier”的处理方法