RegOpenKeyEx、RegQueryValueExA和RegCloseKey

头文件

#include<windows.h>

1. RegOpenKeyEx

函数功能
RegOpenKeyEx,是计算机用语,用于打开一个指定的注册表键。

函数原型

LONG RegOpenKeyEx(
    HKEY hKey, // 需要打开的主键的名称
    LPCTSTR lpSubKey, //需要打开的子键的名称
    DWORD ulOptions, // 保留,设为0
    REGSAM samDesired, // 安全访问标记,也就是权限
    PHKEY phkResult // 得到的将要打开键的句柄
)

函数参数
hKey
[输入] 当前打开或者以下预定义的键。
HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
HKEY_CURRENT_CONFIG
lpSubKey
[输入] 以null结尾的字符串指针,包含要打开的注册表子项的名称。如果参数设置为NULL 或者指向一个空字符串,该函数将打开由hKey参数标识的键的新句柄。这种情况下,函数不会关闭先前已经打开的句柄。
ulOptions
保留,必须设置为 0
samDesired
[输入] 对指定键希望得到的访问权限的访问标记。 这个参数可以使下列值的联合。
值 Meaning
phkResult
[输出] 指向一个接收到打开的键的句柄的变量的指针。当您不再需要返回的句柄时,调用RegCloseKey函数来关闭它。

返回值
函数调用成功,则返回0(ERROR_SUCCESS)。
否则,返回值为文件WINERROR.h中定义的一个非零的错误代码。

代码举例

HKEY hKey = NULL;
LONG lRes = RegOpenKeyExA(
HKEY_LOCAL_MACHINE, 
"SOFTWARE", 
0, 
KEY_READ | KEY_WOW64_32KEY, 
&hKey);

备注:HKEY_LOCAL_MACHINE
在微软的Windows操作系统中,HKEY_LOCAL_MACHINE保存了注册表里的所有与这台计算机有关的配置信息,只是一个公共配置信息单元。
HKEY_LOCAL_MACHINE根键包含5个子键,分别为HARDWARE子键、SAM子键、SECURITY子键、SOFTWARE子键和SYSTEM子键。
HKEY_LOCAL_MACHINE是一个显示控制系统和软件的处理键。

2. RegQueryValueExA

函数功能
检索一个已打开的注册表句柄中,指定的注册表键的类型和设置值

函数原型

LONG WINAPI RegQueryValueEx(
    HKEY hKey,            //一个已打开项的句柄,或者指定一个标准项名
    LPCTSTR lpValueName,  //要查询注册表键值的名字字符串,注册表键的名字,以空字符结束。
    LPDWORD lpReserved,   //未用,设为零
    LPDWORD lpType,       //用于装载取回数据类型的一个变量
    LPBYTE lpData,        //用于装载指定值的一个缓冲区
    LPDWORD lpcbData      //用于装载lpData缓冲区长度的一个变量
);

函数参数备注
如果lpValueName是NULL或空字符串“”,函数将检索键的未命名或默认值(如果有的话)的类型和数据。

返回值
返回值
Long,零(ERROR_SUCCESS)表示成功。
其他任何值都代表一个错误代码

3. RegCloseKey

函数功能
释放指定注册键的句柄。

函数原型

LONG RegCloseKey(
HKEY hKey // 释放键的句柄
);

函数参数
hKey : [输入] 想要关闭的已经打开的键。

返回值
如果过程执行成功,返回值是 ERROR_SUCCESS。
如果功能失败,返回一个非零值,错误码在 Winerror.h 定义。可以使用FormatMessage 函数和FORMAT_MESSAGE_FROM_SYSTEM 标记获得一个分类的错误描述。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值