Cuando intento compilar mi proyecto de C ++ usando Visual Studio 2010 en modo Win32 o x64, aparece el siguiente error:
>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error : "No Target Architecture"
Mis definiciones de preprocesador dicen WIN32; _DEBUG; _CONSOLE;% (PreprocessorDefinitions)
¿Qué está causando este error y cómo lo soluciono?
// 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
Actualización: creé un nuevo proyecto de msvs y copié mi código en él. Ya no lo tengo error : "No Target Architecture"
, pero ahora tengo un montón de errores de compilación que involucran winnt.hy winbase.hy no hay errores de compilación que involucren ninguno de mis archivos. ¿Es posible que estos archivos estén dañados? ¿Necesito reinstalar MSVS 2010?
Actualización 2: Así que reduje mi problema y descubrí que es el #include <WinDef.h>
que está causando todos mis errores de compilación con winnt.h, pero todavía no sé cómo solucionarlo.