|
C/C++ 实现读写注册表
读注册表
// 初始化
HKEY hKey_return = NULL;
// 打开注册表失败
if(ERROR_SUCCESS != RegOpenKeyEx(
HKEY_LOCAL_MACHINE, // 注册表根键句柄(也可以是 HKEY_CLASSES_ROOT、HKEY_CURRENT_USER、HKEY_USERS、HKEY_CURRENT_CONFIG)
去掉第一个参数后的注册表路径, // 注册表路径(开头无'\',结尾有'\')
0, // 保留
KEY_READ, // 只读
&hKey_return // 接收打开键的指针(RegQueryValueEx 会用到)
)){
cout << "RegOpenKeyEx failed." << endl;
return false;
}
// 打开键失败
char keyValue[256];
DWORD keySzType;
DWORD keySize;
if(ERROR_SUCCESS != RegQueryValueEx(
hKey_return, // 由 RegOpenKeyEx 返回
注册表键名, // 键名
0, // 不定义值类型
&keySzType, // 接收键类型
(LPBYTE)&keyValue, // 接收键值
&keySize // 接收键值的字节大小
)){
cout << "RegQueryValueEx failed." << endl;
return false;
}
// 打印注册表键值
cout << keyValue << endl;
写注册表: 这是一个例子,有多余的代码。功能大概是遍历了某个注册表键下的所有键值,酌情修改其中的某个数据 |
|