资源描述:
《注册表相关函数》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、RegOpenKeyEx()函数功能描述:打开一个指定的注册表键原型LONGRegOpenKeyEx(HKEYhKey,//需要打开的主键的名称LPCTSTRlpSubKey,//需要打开的子键的名称DWORDulOptions,//保留,设为0REGSAMsamDesired,//安全访问标记,也就是权限PHKEYphkResult//得到的将要打开键的句柄)hKey[输入]当前打开或者以下预定义的键。HKEY_CLASSES_ROOTHKEY_CURRENT_CONFIGHKEY_CURRENT_USERHKEY_LOCAL_MACHINEHKEY
2、_USERSlpSubKey[输入]指向一个非中断字符串包含将要打开键的名称。如果参数设置为NULL或者指向一个空字符串,过程将打开一个新的句柄由hKey参数确定的值。这种情况下,过程不会关闭先前已经打开的句柄ulOptions保留,必须设置为0samDesired[输入]对指定键希望得到的访问权限的访问标记。RegCreateKeyEx该函数用来创建注册表键,如果该键已经存在,则打开它(注册表键不区分大小写)LONGRegCreateKeyEx(HKEYhKey,LPCTSTRlpSubKey,DWORDReserved,LPTSTRlpClass,
3、DWORDdwOptions,REGSAMsamDesired,LPSECURITY_ATTRIBUTESlpSecurityAttributes,PHKEYphkResult,LPDWORDlpdwDisposition);hKey入参,一个打开键的句柄。调用该函数的进程必须拥有KEY_CREATE_SUB_KEY的权力。该句柄可以是RegCreateKeyEx或者RegOpenKeyEx的返回值,也可以是以下预定义的:HKEY_CLASSES_ROOTHKEY_CURRENT_CONFIGHKEY_CURRENT_USERHKEY_LOCAL_MA
4、CHINEHKEY_USERSlpSubKey入参,标识子键名称。该参数不能为空。参数中不能存在()Reserved保留值,必须为0lpClass入参,指向一个字符串,该字符串定义了该键的类型。可以为空。该参数可以在操作本地和远程注册表时使用dwOptions入参,该参数可以是以下值REG_OPTION_BACKUP_RESTORE,0x00000004LREG_OPTION_NON_VOLATILE,0x00000000L,一般使用该值REG_OPTION_VOLATILE,0x00000001LsamDesired入参,定义访问权限lpSecur
5、ityAttributes入参,定义返回的句柄是否可以被子进程继承,为NULL时不能继承。phkResult出参,保存返回的句柄lpdwDisposition出参,可以是以下值。如果为空,则不返回。REG_CREATED_NEW_KEY,0x00000001L该键是新创建的键REG_OPENED_EXISTING_KEY,0x00000002L该键是已经存在的键ReturnValues成功则返回ERROR_SUCCESSRegSetValueEx若想要设置的注册表项下不是默认值,即有名称值的数据和类型时,可以调用RegSetValueEx函数,该函数将
6、在注册表项下设置指定值的数据和类型。LONGRegSetValueEx(HKEYhKey,LPCTSTRlpValueName,DWORDReserved,DWORDdwType,CONSTBYTE*lpData,DWORDcbData);hKey一个已打开项的句柄,或指定一个标准项名lpValueName指向一个字符串的指针,该字符串包含了欲设置值的名称。若拥有该值名称的值并不存在于指定的注册表项中,则此函数将其加入到该项。如果此值是NULL,或指向空字符串,则此函数为该项的默认值或未命名值设置类型和数据。Reserved保留值,必须强制为0dwTy
7、pe指定将被存储的数据类型,该参数可以为REG_BINARY任何形式的二进制数据REG_DWORD一个32位的数字REG_DWORD_LITTLE_ENDIAN一个“低字节在前”格式的32位数字REG_DWORD_BIG_ENDIAN一个“高字节在前”格式的32位数字REG_EXPAND_SZ一个以0结尾的字符串,该字符串包含对环境变量(如“%PAHT”)的未扩展引用REG_LINK一个Unicode格式的带符号链接REG_MULTI_SZ一个以0结尾的字符串数组,该数组以连接两个0为终止符REG_NONE未定义值类型REG_RESOURCE_LIST
8、一个设备驱动器资源列表REG_SZ一个以0结尾的字符串lpData指向一个缓冲区,该缓冲区包含