我用ATL建了一个工程,没有勾选MFC支持,然后在使用CRegKey类时出现如下错误:
XXX.cpp(31): error C2065: “CRegKey”: 未声明的标识符
XXX.cpp(31): error C2146: 语法错误: 缺少“;”(在标识符“reg”的前面)
XXX.cpp(31): error C2065: “reg”: 未声明的标识符
XXX.cpp(34): error C2065: “reg”: 未声明的标识符
XXX.cpp(34): error C2228: “.Open”的左边必须有类/结构/联合
类型是“'unknown-type'”
XXX.cpp(41): error C2065: “reg”: 未声明的标识符
XXX.cpp(41): error C2228: “.SetValue”的左边必须有类/结构/联合
类型是“'unknown-type'”
解决方法:
工程中包含以下头文件和命名空间即可:
//#include <atlcom.h>
#include <atlbase.h>
using namespace ATL;