访问远程计算机注册表(范文)
第 PAGE \* Arabic 1 页第 PAGE \* Arabic 1 页
VB访问远程计算机注册表
启动 Visual Basic 6.0, 并创建新项目的类型标准 EXE。
正在装载数据……
2. 右击窗体, 并在 快捷 菜单上单击 查看代码 。 开头的代码添加以下语句:
Option Explicit
3. 添加以下代码来声明用于访问注册表常数:
Private Const HKEY_CLASSES_ROOT = &Private Const HKEY_CURRENT_USER = &Private Const HKEY_LOCAL_MACHINE = &Private Const HKEY_USERS = &Private Const KEY_QUERY_VALUE = &H1
Private Const KEY_SET_VALUE = &H2
Private Const KEY_ALL_ACCESS = &H3F
Private Const REG_SZ As Long = 1
Private Const ERROR_SUCCESS = 0&
4. 添加下列代码以声明对 Windows 应用程序编程接口 (API) 中注册表函数入口点:
Private Declare Function RegConnectRegistry Lib "advapi32.dll" _
Alias "RegConnectRegistryA" _
(ByVal lpMachineName As String, _
ByVal hKey As Long, _
phkResult As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32.dll" _
(ByVal hKey As Long) As Long
Private Declare Function RegOpenKeyEx Lib "advapi32.dll" _
Alias "RegOpenKeyExA" _
(ByVal hKey As Long, _
ByVal lpSubKey As String, _
ByVal ulOptions As Long, _
ByVal samDesired As Long, _
phkResult As Long) As Long
Private Declare Function RegQueryValueExString Lib "advapi32.dll" _
Alias "RegQueryValueExA" _
(ByVal hKey As Long, _
ByVal lpValueName As String, _
ByVal lpReserved As Long, _
lpType As Long, _
ByVal lpData As String, _
lpcbData As Long) As Long
5. 添加以下全局变量声明:
Private hRemoteReg As Long
6. 添加下列代码以处理 Form _ Load 事件。 此代码调用 RegConnectRegistry 函数来连接到远程注册表。 将 \\RemoteMachineName 参数替换为计算机要访问其注册表名称:
Private Sub Form_Load()
Dim lRet As Long
'Connect to the remote registry
lRet = RegConnectRegistry("\\RemoteMachineName", _
HKEY_LOCAL_MACHINE, _
hRemoteReg)
If (lRet = ERROR_SUCCESS) Then
MsgBox "Successfully connected to remote registry"
Else
MsgBox "Error:" & Err.LastDllError
Unload Me
Exit Sub
End If
End Sub
7. 添加下列代码以处理 _ Unload 事件:
Private Sub Form_Unload(Cancel As Integer)
Dim lRet As Long
If hRemoteReg <> 0 Then
lRet = RegCloseKey(hRemoteReg)
End If
End Sub
8. 在窗体设计器, 添加到窗体 命令 控件。 控件