注册表操作(WindowsAPI)
2018-01-18 本文已影响0人
7bfedbe4863a
RegCreateKeyEx
该函数用来创建注册表键,如果该键已经存在,则打开它(注册表键不区分大小写)
LONG RegCreateKeyEx(
HKEY hKey,
LPCTSTR lpSubKey,
DWORD Reserved,
LPTSTR lpClass,
DWORD dwOptions,
REGSAM samDesired,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
PHKEY phkResult,
LPDWORD lpdwDisposition
);
参数说明
- hKey(输入参数),一个打开键的句柄。调用该函数的进程必须拥有KEY_CREATE_SUB_KEY的权力。该句柄可以是RegCreateKeyEx或者RegOpenKeyEx的返回值,也可以是以下预定义的值:
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS - lpSubKey(输入参数),标识子键名称。该参数不能为空。参数中不能存在(\)?
- Reserved
保留值,必须为0 - lpClass(输入参数),指向一个字符串,该字符串定义了该键的类型。可以为空。该参数可以在操作本地和远程注册表时使用
- dwOptions(输入参数),该参数可以是以下值
REG_OPTION_BACKUP_RESTORE,0x00000004L
REG_OPTION_NON_VOLATILE,0x00000000L ,一般使用该值
REG_OPTION_VOLATILE,0x00000001L - samDesired(输入参数),定义访问权限
- lpSecurityAttributes(输入参数),定义返回的句柄是否可以被子进程继承,为NULL时不能继承。
- phkResult(输出参数),保存返回的句柄
- lpdwDisposition(输出参数),可以是以下值。如果为空,则不返回。
REG_CREATED_NEW_KEY,0x00000001L 该键是新创建的键
REG_OPENED_EXISTING_KEY,0x00000002L 该键是已经存在的键