Win32 또는 x64 모드에서 Visual Studio 2010을 사용하여 C ++ 프로젝트를 컴파일하려고하면 다음 오류가 발생합니다.
>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error : "No Target Architecture"
내 전 처리기 정의에 WIN32; _DEBUG; _CONSOLE; % (PreprocessorDefinitions)
이 오류의 원인은 무엇이며 어떻게 해결합니까?
// 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을 다시 설치해야합니까?
업데이트 2 : 그래서 내 문제를 좁혀서 #include <WinDef.h>
winnt.h로 모든 컴파일 오류를 일으키는 것으로 나타 났지만 여전히 해결 방법을 모르겠습니다.