新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 网络学院 > 操作系统 > 注册表 > 注册表编程 > 正文:编程解决注册表问题所需的函数详解

编程解决注册表问题所需的函数详解

新客网 XKER.COM 2006-06-28 来源: 收藏本文


   lpcbMaxValueName--返回最长的值项名称的长度

   lpcbMaxValueLen--返回最长的值的长度

   lpcbSecurityDescriptor--返回安全描述,仅适用于 NT

   lpftLastWriteTime--返回键最后被写入的时间,仅适用于 NT

     返回值:=0 成功 ≠0 失败

  13.RegLoadKey():从指定的文件恢复注册表键的子键信息到注册表。

RegLoadKey(ByVal hKey As Long, ByVal lpSubKey As String, ByVal lpFile As String)
14.RegReplaceKey():从指定的文件恢复注册表键的子键信息到注册表并替换原有的值。

 
RegReplaceKey(ByVal hKey As Long, ByVal lpSubKey As String, ByVal lpNewFile As String, ByVal lpOldFile As String)

  15.RegRestoreKey():仅适用于Windows NT。从指定的文件中读取注册表键的信息并覆盖注册表中原有的值。

RegRestoreKey(ByVal hKey As Long, ByVal lpFile As String, ByVal dwFlags As Long)

  16. RegSaveKey():保存键及其子键信息到指定的文件。

RegSaveKey(ByVal hKey As Long, ByVal lpFile As String, lpSecurityAttributes As SECURITY_ATTRIBUTES)

  17. RegConnectRegistry():连接到远程系统的注册表。

RegConnectRegistry(ByVal lpMachineName As String, ByVal hKey As Long, phkResult As Long)

  18. RegNotifyChangeKeyValue():当修改指定的注册表对象时提供通知。

RegNotifyChangeKeyValue(ByVal hKey As Long, ByVal bWatchSubtree As Long, ByVal dwNotifyFilter As Long, ByVal hEvent As Long, ByVal fAsynchronus As Long)

  19. RegUnloadKey():删除注册表键及其所有的子键。

RegUnLoadKey(ByVal hKey As Long, ByVal lpSubKey As String)

  20. RegGetKeySecurity():检索指定键的安全信息。

RegGetKeySecurity(ByVal hKey As Long, ByVal SecurityInformation As Long, pSecurityDescriptor As SECURITY_DESCRIPTOR, lpcbSecurityDescriptor As Long)

  21. RegSetKeySecurity():设置指定键的安全信息。

RegSetKeySecurity(ByVal hKey As Long, ByVal SecurityInformation As Long, pSecurityDescriptor As SECURITY_DESCRIPTOR)

  最后给出两个函数是经过王国荣老师改编过的函数,与此相关,也一并列出。并且在我们的例子程序中要用到它们。RegEnumValueAsAny可以传入长整数和字符串;RegEnumValueAsAny2中lpData参数被改成Any后,可以使用Byte数组,由于Byte数组是采用”传地址方式来传递参数的,可以省下复制字符串数据的时间,使得程序变得更加高效。

Declare Function RegEnumValueAsAny Lib "advapi32.dll" Alias "RegEnumValueA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, lpcbValueName As Long, lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long

Declare Function RegEnumValueAsAny2 Lib "advapi32.dll" Alias "RegEnumValueA" (ByVal hKey As Long, ByVal dwIndex As Long, lpValueName As Any, lpcbValueName As Long, lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long

  参数说明:

   hKey:Key Handle

   dwIndex:欲读取之名称的顺序

   lpValueName:返回所读取的名称

   lpcbValueName:传入lpValueName参数的长度,返回所读取的名称的长度,注意这一长度不含chr(0)

   lpReserved:保留参数,实际使用时传入ByVal 0即可

   lpType:返回所读取的数据类型

   lpData:返回所读取的数据

   lpcbData:传入lpData,返回所读取的数据长度

   返回值: =0,表示成功;≠0,表示失败。

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐