【发布时间】:2012-03-29 10:32:57
【问题描述】:
我最近获得了一个应用程序的源代码。当我尝试构建解决方案时,我在包含winnt.h 的所有部分都收到错误消息。错误代码略有不同,但它们始终指向 winnt.h 中的这些行:
typedef void *PVOID;
typedef void * POINTER_64 PVOID64;
和
struct {
DWORD crc;
BYTE rgbReserved[14];
} CRC;
那么,这可能是什么原因? winnt.h 是标准头文件,未修改。是否与我使用 VS 2010 或我使用 64 位 Windows 有关?还是需要某种配置?
编辑: 这是确切的错误代码:
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 ';'
【问题讨论】:
-
请发布确切的错误
-
看起来它正在尝试同时键入两个名称?很确定这不是标准的。
标签: c++ windows visual-studio-2010