Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Visual Studio 2010 IDE 64位生成没有目标体系结构错误_C++_Visual Studio 2010_32bit 64bit - Fatal编程技术网

C++ Visual Studio 2010 IDE 64位生成没有目标体系结构错误

C++ Visual Studio 2010 IDE 64位生成没有目标体系结构错误,c++,visual-studio-2010,32bit-64bit,C++,Visual Studio 2010,32bit 64bit,我有一个由许多dll和exe项目组成的应用程序。我正在移植到一个64位版本,实际上一切都很好。但是,我有一个exe项目无法在64位配置中正确生成。奇怪的是,它不会从idebuild命令生成。如果我打开一个64位VS命令窗口并使用msbuild生成,它将成功生成 我已经看了一些其他类似的问题和答案,这些问题和答案通常涉及额外(或缺失)的窗口。h包括,但很难确定这是否是同一件事。我尝试了不同的包含组合,但没有发现明显的问题 我可以在VS IDE中将该项目构建为32位exe 我无法在VS IDE中将项

我有一个由许多dll和exe项目组成的应用程序。我正在移植到一个64位版本,实际上一切都很好。但是,我有一个exe项目无法在64位配置中正确生成。奇怪的是,它不会从idebuild命令生成。如果我打开一个64位VS命令窗口并使用msbuild生成,它将成功生成

我已经看了一些其他类似的问题和答案,这些问题和答案通常涉及额外(或缺失)的窗口。h包括,但很难确定这是否是同一件事。我尝试了不同的包含组合,但没有发现明显的问题

我可以在VS IDE中将该项目构建为32位exe 我无法在VS IDE中将项目生成为64位exe 我可以在64位命令窗口中将项目构建为64位exe

我已经将_WIN64和_AMD64定义为预处理器定义

如果启用编译器选项显示包含,我会看到:

1> Note: including file: c:\dev\projects\myapp\myproject.root\myproject\stdafx.h 1> Note: including file: c:\dev\projects\myapp\myproject.root\myproject\targetver.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\SDKDDKVer.h 1> Note: including file: c:\dev\projects\myapp\myproject.root\myproject\resource.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlbase.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atldef.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlrc.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\errno.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 (x86)\Microsoft Visual Studio 10.0\VC\include\sal.h 1> Note: including file: c:\program files (x86)\microsoft visual studio 10.0\vc\include\codeanalysis\sourceannotations.h 1>c:\program files (x86)\microsoft visual studio 10.0\vc\include\codeanalysis\sourceannotations.h(27): error C2371: 'size_t' : redefinition; different basic types 1> predefined C++ types (compiler internal)(19) : see declaration of 'size_t' 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\vadefs.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\malloc.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 (x86)\Microsoft Visual Studio 10.0\VC\include\stdlib.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 (x86)\Microsoft Visual Studio 10.0\VC\include\limits.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 (x86)\Microsoft Visual Studio 10.0\VC\include\crtdbg.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 (x86)\Microsoft SDKs\Windows\v7.0A\include\winsock2.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\windows.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\excpt.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 (x86)\Microsoft Visual Studio 10.0\VC\include\stdarg.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\windef.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h 1> Note: including file: C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include\ctype.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 (x86)\Microsoft SDKs\Windows\v7.0A\include\specstrings.h 1> Note: including file: c:\program files (x86)\microsoft sdks\windows\v7.0a\include\sal_supp.h 1> Note: including file: c:\program files (x86)\microsoft sdks\windows\v7.0a\include\specstrings_supp.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\specstrings_strict.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\specstrings_undef.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\driverspecs.h 1> Note: including file: c:\program files (x86)\microsoft sdks\windows\v7.0a\include\sdv_driverspecs.h 1> Note: including file: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\kernelspecs.h 1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error : "No Target Architecture" 1> 注意:包括文件:c:\dev\projects\myapp\myproject.root\myproject\stdafx.h 1> 注意:包括文件:c:\dev\projects\myapp\myproject.root\myproject\targetver.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\SDKDDKVer.h 1> 注意:包括文件:c:\dev\projects\myapp\myproject.root\myproject\resource.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlbase.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atldef.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\atlmfc\include\atlrc.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\errno.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\sal.h 1> 注意:包括文件:c:\ProgramFiles(x86)\microsoft visual studio 10.0\vc\include\codeanalysis\sourceannotations.h 1> c:\ProgramFiles(x86)\microsoft visual studio 10.0\vc\include\codeanalysis\sourceannotations.h(27):错误C2371:“大小”:重新定义;不同的基本类型 1 >预定义的C++类型(编译器内部)(19):参见“sisiHyt”的声明 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\vadefs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\malloc.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\stdlib.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\limits.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdbg.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\winsock2.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\Windows.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\excpt.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\stdarg.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\windef.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\winnt.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\ctype.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft Visual Studio 10.0\VC\include\crtdefs.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\specstrings.h 1> 注意:包括文件:c:\program files(x86)\microsoft SDK\windows\v7.0a\include\sal\u supp.h 1> 注意:包括文件:c:\program files(x86)\microsoft SDK\windows\v7.0a\include\specstrings\u supp.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\specstrings\u strict.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\specstrings\u undf.h 1> 注意:包括文件:C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\include\driverspecs.h 1> 注意:包括文件:c:\program files(x86)\microsoft SDK\windows\v7.0a\include\sdv\u driverspecs.h 1> 注意:包括文件:C:\ProgramFiles(x86)\Microsoft SDK\Windows\v7.0A\include\kernelspecs.h 1> C:\ProgramFiles(x86)\Microsoft SDK\Windows\v7.0A\include\winnt.h(135):致命错误C1189:#错误:“无目标体系结构”
有什么建议吗?

我想我已经找到答案了。我将我的项目设置与我创建的新的空项目进行了比较。可执行目录的VC++目录项与我的不同

默认目录以以下内容开头: $(VCInstallDir)bin\x86\u amd64

我现有的项目没有这个。我将它添加到我的项目中,用于64位平台调试和发布配置,现在可以构建64位版本了。我仍然可以构建32位版本


我假设该目录是64位编译器和链接器所在的位置。如果这是正确的,那么“无目标体系结构”错误似乎是针对该情况给出的奇怪错误消息。

无需定义
\u WIN64