c++ - VS 2010 构建错误

标签 c++ windows visual-studio-2010 visual-c++

我正在 2010 年编译一个可执行的 Win32 控制台应用程序,该应用程序是在 VS 2005 中开发的。我已经使用 VS 2005 检查了所有设置,但它仍然抛出构建错误。请帮忙。

       1>------ Rebuild All started: Project: vssreg, Configuration: Debug x64 ------
    1>  stdafx.cpp
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(543): error C2065: '_In_opt_z_' : undeclared identifier
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(543): error C2143: syntax error : missing ')' before 'const'
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(543): warning C4229: anachronism used : modifiers on data are ignored
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(543): error C2182: '_invalid_parameter' : illegal use of type 'void'
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(543): error C2491: '_invalid_parameter' : definition of dllimport data not allowed
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(543): error C2059: syntax error : ')'
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2065: '_In_opt_z_' : undeclared identifier
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2143: syntax error : missing ')' before 'const'
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): warning C4229: anachronism used : modifiers on data are ignored
    1>c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h(550): error C2182: '_invoke_watson' : illegal use of type 'void'

When I tried to put /ShowIncludes option , im getting following includes info

    1>------ Rebuild All started: Project: vssreg, Configuration: Debug x64 ------
1>  stdafx.cpp
1>  Note: including file: c:\rajesh\hak\hak27x64\2010\hak_27_x64\itxvssreg\stdafx.h
1>  Note: including file:  c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\iostream
1>  Note: including file:   c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\istream
1>  Note: including file:    c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ostream
1>  Note: including file:     c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ios
1>  Note: including file:      c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\xlocnum
1>  Note: including file:       c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\climits
1>  Note: including file:        c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\yvals.h
1>  Note: including file:         c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h
1>  Note: including file:          C:\Program Files\Microsoft SDKs\Windows\v6.1\Include\sal.h
1>  Note: including file:          c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vadefs.h

最佳答案

你节目中的这句台词有点赠品

C:\Program Files\Microsoft SDKs\Windows\v6.1\Include\sal.h

不知何故,您仍然包含 VS 2005 header 。作为第一步,我会尝试重命名 v6.1 目录,看看是否能解决问题。如果是这样,请查看您的项目设置,以便不引用 C:\Program Files\Microsoft SDKs。

关于c++ - VS 2010 构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11735089/

相关文章:

python - pip : command in environment . yaml 文件的含义是什么?

c++ - 根据变量调用函数?

C++11 可变参数模板和逗号分隔表达式等价

返回的 C++ 时间晚了两个小时

c++ - 从 x32 迁移到 x64 时出现链接器错误

Windows GitHub 应用未检测到自述文件

c++ - Visual Studio 2010 不喜欢 mixin 中的 typedef typename

c# - 在 ASP.NET 中,您如何才能返回 "reset"并返回到原始状态,即回发前?

C++ Intellisense 不起作用(甚至 Ctrl+Space 也不行),没有函数名,没有参数列表,什么都没有

c++ - 解析二进制文件以查找 C++ 中的 URI