VS2015配置海康威视SDK环境报错“编译提示应输入字符串文本”怎么办?
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38268): error C3690: 应该为字符串文本,但找到的是用户定义的字符串文本
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38268): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38268): error C2146: 语法错误: 缺少“;”(在标识符“BOOL”的前面)
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38269): error C3690: 应该为字符串文本,但找到的是用户定义的字符串文本
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38269): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38269): error C2146: 语法错误: 缺少“;”(在标识符“BOOL”的前面)
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38273): error C3690: 应该为字符串文本,但找到的是用户定义的字符串文本
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38273): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38273): error C2146: 语法错误: 缺少“;”(在标识符“BOOL”的前面)
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38274): error C3690: 应该为字符串文本,但找到的是用户定义的字符串文本
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38274): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38274): error C2146: 语法错误: 缺少“;”(在标识符“BOOL”的前面)
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38284): error C3690: 应该为字符串文本,但找到的是用户定义的字符串文本
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38284): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>C:\Users\Administrator\Desktop\CH-HCNetSDK(Windows32)V5.2.1.3_build20160513\头文件\HCNetSDK.h(38284): error C2146: 语法错误: 缺少“;”(在标识符“BOOL”的前面)
解决方法:
#if (defined(_WIN32)) //windows
#define NET_DVR_API extern "C" __declspec(dllimport)
typedef unsigned __int64 UINT64;
typedef signed __int64 INT64;
#elif defined(__linux__) || defined(__APPLE__) //linux
extern "C"后面需要增加一个空格,原头文件没有空格的