Recientemente obtuve el código fuente en una aplicación. Cuando intento construir la solución, aparece un error en todas las partes donde se incluye winnt.h
. Los códigos de error difiere un poco, pero siempre apuntan a estas líneas en winnt.h:error de sintaxis: falta ';' antes del identificador 'PVOID64' al compilar winnt.h
typedef void *PVOID;
typedef void * POINTER_64 PVOID64;
y
struct {
DWORD crc;
BYTE rgbReserved[14];
} CRC;
Por lo tanto, lo que podría ser la causa de esto? winnt.h es un encabezado estándar y no ha sido modificado. ¿Tiene algo que ver conmigo usando VS 2010, o yo usando Windows de 64 bits? o es algún tipo de configuración que se necesita?
EDIT: aquí está el error códigos exactos:
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(290): error C2146: syntax error : missing ';' before identifier 'PVOID64'
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(290): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(8992): error C2146: syntax error : missing ';' before identifier 'Buffer'
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(8992): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(8992): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(11525): error C2059: syntax error : 'constant'
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(11525): error C2238: unexpected token(s) preceding ';'
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(11556): error C2059: syntax error : 'constant'
1>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(11556): error C2238: unexpected token(s) preceding ';'
Por favor, publique el error (s) exacto (s) – Konrad
Parece que está tratando de escribir dos nombres a la vez? Estoy bastante seguro de que eso no es estándar. – BoBTFish
Agregó los códigos de error –