VB 如何写入注册表呢?

来源:百度知道 编辑:UC知道 时间:2024/05/03 03:17:13
我要在
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ABCDEFG 里写入以下几个字符串值

DisplayIcon "显示图标"
DisplayName "显示名称"
DisplayVersion "显示版本"
Publisher "发布者"
UninstallString "卸载路径"
URLInfoAbout "www.abc.com"

应该如何操作呢?
Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Declare Function RegDeleteValue Lib "advapi32.dll&

VB有一些内置的函数用来操作注册表,它们分别是SaveSetting,GetSetting和GetAllSetting以及DeleteSetting,不过这些函数只允许你访问注册表的固定部分。

如果你想对注册表的操作具有强大的灵活性,你可以使用Windowd专门操作注册表的API函数,它们给了你访问注册表最大的自由度。

On Error Resume Next '容错句
Dim wsh
Set wsh = CreateObject("Wscript.Shell") '利用wshshell写注册表

wsh.Regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ABCDEFG\DisplayIcon","显示图标","REG_SZ"
wsh.Regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ABCDEFG\DisplayName","显示名称","REG_SZ"
wsh.Regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ABCDEFG\DisplayVersion","显示版本","REG_SZ"
wsh.Regwrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\ABCDEFG\Publis