VB 与 注册表

 

1:可以把选项保存在文件、数据库或注册表中,然后在程序启动时加入ComboBox。这样每次你只需要修改文件或注册表就可以了,而不需要重新编译程序。下面的例子就是从注册表中读取:
Private Sub Form_Load()
Dim s As String
Dim i As Integer

i = 0
Do
s = GetSetting(appname := "MyApp", section := "Startup", _
key := i, default := "")
If s <> "" Then Combo1.AddItem s
i = i + 1
Loop Until s = ""
End Sub

2:打开注册表: Shell "regedit.exe", vbNormalFocus。
RegSetValueEx 函数
3:Public 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 ' Note that if you declare the lpData parameter as String, you must pass it By Value.
在一个注册表项下设置一个指定值的数据和类型
hKey 当前打开项的句柄
lpValueName 要设置值的名称
Reserved 未用,设为0
dwtype 要设置值的数据类型
lpdata 要设置值的数据
cbData 缓冲区的长度
RegSetValue 函数
Public Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
在一个注册表项下设置一个指定值的数据和类型
hkey 当前打开项的句柄
lpSubKey 注册表新子项的名称
dwType 要设置值的数据类型
lpData 要设置值的数据
cbData 缓冲区的长度
RegCreateKey 函数
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
在指定的项下创建一个新项,如果指定的项已存在,则打开这个项
hKey 当前打开项的句柄。
lpSubKey 注册表新子项的名称
phkresult 指定一个变量,装载新子项的句柄
RegDeleteKey 函数
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
hKey 当前打开项的句柄
lpSubKey 要删除项的值的名称,如果设为VBNULLSTRING 或 “” ,是删除指定的默认值
RegCloseKey
Public Declare Function RegCloseKey Lib "advapi32.dll" Alias "RegCloseKey" (ByVal hKey As Long) As Long
hKey 当前打开项的句柄 函数
RegOpenKey
Public Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long

hKey 当前打开项的句柄 函数
lpSubKey 要打开项的名称
phkresult 指定一个变量,装载新子项的句柄

在工程运行前,使之自动存盘
HKEY_CURRERT_USER/Software/Microsoft/Visual Basic/6.0
"saveBeforeRun" 1

用VB备份注册表单个分支
Private Sub Command1_Click()
Shell "regedit /e e:/11.reg HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Run"
End Sub
用VB备份整个注册表
Shell "regedit /e e:/11.reg"

直接导入注册表
Shell "regedit c:/windows/system32/电脑优化.reg"
SendKeys "{enter}",True

shell "regedit /s e:/11.reg"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值