Win32 SDK注册表操作——RegOpenKey

类别:VC语言 点击:0 评论:0 推荐:
RegOpenKey

(更多内容,请见http://websl.126.com)


RegOpenKey函数打开给定键。这个函数与Windows 3.1兼容。基于Win32的应用程序应该使用RegOpenKeyEx函数。

LONG RegOpenKey(
HKEY
hKey, // 要打开键的句柄
LPCTSTR lpSubKey, // 要打开子键的名字的地址
PHKEY phkResult // 要打开键的句柄的地址
);

参数

hKey
当前打开键的句柄或下列已确定的保留句柄值:

HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
Windows NT:
HKEY_PERFORMANCE_DATA
Windows 95和Windows 98: HKEY_DYN_DATA

RegOpenKey函数打开地键是能被hKey识别的子键。


lpSubKey
指向包含了要打开键的名字的以空字符结束的字符串。这个键必须是能被hKey参数识别的子键。如果这个参数为NULL或指向一个空字符串,函数返回与被传递相同的句柄。
phkResult
指向一个接收被打开键句柄的变量。当你不再需要返回句柄时,调用RegCloseKey函数关闭它。
返回值

如果调用成功,返回ERROR_SUCCESS。


如果调用失败,返回一个非零错误码(定义在WINERROR.H)。你可以使用带有FORMAT_MESSAGE_FROM_SYSTEM标记的FormatMessage函数获得普通错误描述信息。


注意

RegOpenKey函数使用默认的安全存取掩码打开一个键。如果打开的键需要一个不同的掩码,函数将发生错误,返回ERROR_ACCESS_DENIED。在这种情形下一个应用程序应该使用RegOpenKeyEx函数去指定存取掩码。


为像RegCreateKey函数,如果键在数据库不存在时,RegOpenKey不能新建给定键。


快速信息

  Windows NT: 需要3.1或更高版本。
  Windows: 需要Windows 95或更高版本。
  Windows CE: 不支持。
  文件头: winreg.h。
  输入库: advapi32.lib。
  Unicode: 在Windows NT中作为Unicode和ANSI执行。


参见

Registry Overview, Registry Functions, RegCloseKey, RegCreateKey, RegCreateKeyEx, RegDeleteKey, RegOpenKeyEx

本文地址:http://com.8s8s.com/it/it2802.htm