您的位置:首页 > 编程语言 > C语言/C++

VS2013中普通C++项目添加属性表后出错解决方法

2016-10-29 20:17 495 查看

出现错误

1>D:\Program Files (x86)\The Enigma Protector\EnigmaSDK\VCx64\enigma_ide64.h(352): error C2146: 语法错误: 缺少“;”(在标识符“Stolen”的前面)
1>D:\Program Files (x86)\The Enigma Protector\EnigmaSDK\VCx64\enigma_ide64.h(352): error C4430: 缺少类型说明符 - 假定为 int。注意:  C++ 不支持默认 int
1>D:\Program Files (x86)\The Enigma Protector\EnigmaSDK\VCx64\enigma_ide64.h(353): error C2146: 语法错误: 缺少“;”(在标识符“CreationYear”的前面)
1>D:\Program Files (x86)\The Enigma Protector\EnigmaSDK\VCx64\enigma_ide64.h(356): error C2146: 语法错误: 缺少“;”(在标识符“UseKeyExpiration”的前面)
1>D:\Program Files (x86)\The Enigma Protector\EnigmaSDK\VCx64\enigma_ide64.h(356): error C4430: 缺少类型说明符 - 假定为 int。注意:  C++ 不支持默认 int
1>D:\Program Files (x86)\The Enigma Protector\EnigmaSDK\VCx64\enigma_ide64.h(357): error C2146: 语法错误: 缺少“;”(在标识符“ExpirationYear”的前面)


错误原因

在VS2013中普通的C++程序并不支持BOOL和DWORD等类型,这几中类型在头文件#include

解决方法

(1)包含头文件

#include <minwindef.h>或者#include<windows.h>


此时又会出现新的问题

>C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\include\winnt.h(135): fatal error C1189: #error :  "No Target Architecture"


(2) 属性管理器->C/C++ ->预处理器->预处理器定义,添加

_AMD64_


(3)问题解决

参考:

http://stackoverflow.com/questions/4845198/fatal-error-no-target-architecture-in-visual-studio

http://stackoverflow.com/questions/19292655/c1189-error-no-target-architecture

http://blog.csdn.net/ultimatestudio/article/details/15998617
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: