Fatal error: quot;No Target Architecturequot; in Visual Studio(致命错误:“无目标架构在 Visual Studio 中)
问题描述
当我尝试在 Win32 或 x64 模式下使用 Visual Studio 2010 编译我的 C++ 项目时,出现以下错误:
When I try to compile my c++ project using Visual Studio 2010 in either Win32 or x64 mode I get the following error:
>C:Program Files (x86)Microsoft SDKsWindowsv7.0Aincludewinnt.h(135):致命错误 C1189:#error:无目标架构"
我的预处理器定义说 WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
My preprocessor definitions say WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)
是什么导致了这个错误,我该如何解决?
What is causing this error and how do I fix it?
// winnt.h: lines 127-136, MSVS says this is an inactive preprocessor block
#if defined(_WIN64)
#if defined(_AMD64_)
#define PROBE_ALIGNMENT( _s ) TYPE_ALIGNMENT( DWORD )
#elif defined(_IA64_)
#define PROBE_ALIGNMENT( _s ) (TYPE_ALIGNMENT( _s ) > TYPE_ALIGNMENT( DWORD ) ?
TYPE_ALIGNMENT( _s ) : TYPE_ALIGNMENT( DWORD ))
#else
#error "No Target Architecture"
#endif
更新:我创建了一个新的 msvs 项目并将我的代码复制到其中.我不再有 error : "No Target Architecture",但现在我有一堆涉及 winnt.h 和 winbase.h 的编译错误,并且没有涉及我的任何文件的编译错误.这些文件是否可能已损坏?我是否需要重新安装 MSVS 2010?
Update: I created a new msvs project and copied my code to it. I no longer have error : "No Target Architecture", but now I have a bunch of compile errors involving winnt.h and winbase.h and no compile errors involving any of my files. Is it possible these files are corrupted? Do I need to reinstall MSVS 2010?
更新 2:所以我缩小了我的问题范围,发现是 #include <WinDef.h> 导致了我所有的 winnt.h 编译错误,但我仍然没有知道如何修复它.
Update 2: So I narrowed down my problem and found that it is #include <WinDef.h> that is causing all of my compile errors with winnt.h but I still don't know how to fix it.
推荐答案
使用 #include 而不是 #include .
来自 windows.h 维基百科页面:
From the windows.h wikipedia page:
windows.h 会自动包含许多子头文件.由于依赖关系,其中许多文件不能简单地单独包含(它们不是自包含).
There are a number of child header files that are automatically included with
windows.h. Many of these files cannot simply be included by themselves (they are not self-contained), because of dependencies.
windef.h 是 windows.h 自动包含的文件之一.
windef.h is one of the files automatically included with windows.h.
这篇关于致命错误:“无目标架构"在 Visual Studio 中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:致命错误:“无目标架构"在 Visual Studio 中
基础教程推荐
- 如何在 C++ 中正确使用命名空间? 2022-01-01
- 为什么我们不能使用“虚拟继承"?在 COM 中? 2022-01-01
- c++ STL设置差异 2022-01-01
- 如何部分禁用 cmake C/C++ 自定义编译器检查 2021-01-01
- 随机插入/删除的综合向量与链表基准 2022-01-01
- 将不可复制的闭包对象传递给 std::function 参数 2021-01-01
- 与 CAS 的原子交换(使用 gcc 同步内置函数) 2022-01-01
- 如何更改 SysDateTimePick32 或 CDateTimeCtrl 的背景颜色? 2022-01-01
- C++:获取传递给函数的多维数组的行大小 2021-01-01
- 提升 ASIO 流缓冲 2021-01-01
