HanDs
管理员

[Visual Studio文章] 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"


学习中请遵守法律法规,本网站内容均来自于互联网,本网站不负担法律责任
VB 与注册表
#1楼
发帖时间:2016-7-9   |   查看数:0   |   回复数:0
游客组
快速回复