加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

VB读取注册表

发布时间:2020-12-16 23:16:17 所属栏目:大数据 来源:网络整理
导读:Private Type SECURITY_ATTRIBUTES nLength As Long lpSecurityDescriptor As Long bInheritHandle As Boolean End Type Dim lang As String Private Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hkey As Long,ByVal lp

Private Type SECURITY_ATTRIBUTES
nLength As Long
lpSecurityDescriptor As Long
bInheritHandle As Boolean
End Type

Dim lang As String

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 RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hkey As Long,ByVal lpValueName As String,ByVal lpReserved As Long,lpType As Long,lpData As Any,lpcbData As Long) As Long
Private Declare Function RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hkey As Long,ByVal Reserved As Long,ByVal lpClass As String,ByVal dwOptions As Long,lpSecurityAttributes As SECURITY_ATTRIBUTES,phkResult As Long,lpdwDisposition As Long) As Long
Private Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hkey As Long,ByVal dwType As Long,ByVal lpData As String,ByVal cbData As Long) As Long

Private Const KEY_SET_VALUE = &H2&
Private Const READ_CONTROL = &H20000
Private Const KEY_CREATE_SUB_KEY = &H4&
Private Const STANDARD_RIGHTS_WRITE = READ_CONTROL
Private Const STANDARD_RIGHTS_READ = READ_CONTROL
Private Const KEY_QUERY_VALUE = &H1&
Private Const KEY_ENUMERATE_SUB_KEYS = &H8&
Private Const KEY_NOTIFY = &H10&

Private Const KEY_READ = STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY
Private Const KEY_WRITE = STANDARD_RIGHTS_WRITE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY

Private Const REG_SZ = 1&

Private Const ERROR_SUCCESS = 0&

Private Const HKEY_CURRENT_USER = &H80000001
Private Const HKEY_LOCAL_MACHINE = &H80000002
Private Const HKEY_CLASSES_ROOT = &H80000000
Private Const HKEY_CURRENT_CONFIG = &H80000005
Private Const HKEY_USERS = &H80000003

Private Sub Command1_Click() Dim linedata As String Dim data As String Dim line2 As String Dim lbuffer As Long,sbuffer As String,hkey As Long,ltype As Long,ldata As Long Dim mVal As Long Dim mSubKey As String Dim svalue As String Dim s As Long Dim ss As SECURITY_ATTRIBUTES Open App.Path + "/verification.txt" For Input As #1 While Not EOF(1) Line Input #1,linedata Close #1 GoTo tuichu Wend tuichu: data = linedata Open App.Path + "/verification.txt" For Input As #1 While Not EOF(1) Line Input #1,linedata line2 = linedata Wend Close #1 Open App.Path + "/verification.txt" For Output As #1 Print #1,line2 Close #1 Select Case data Case "vwliang" mSubKey = "SOFTWARE/VW/VT" End Select mVal = RegOpenKeyEx(HKEY_LOCAL_MACHINE,mSubKey,KEY_READ,hkey) If mVal <> ERROR_SUCCESS Then MsgBox LoadResString(Int(lang & "04")),vbCritical,"Error Message" Exit Sub End If lbuffer = 255 sbuffer = Space(lbuffer) mVal = RegQueryValueEx(hkey,"Path",ltype,ByVal 0,lbuffer) mVal = RegQueryValueEx(hkey,ByVal sbuffer,lbuffer) If mVal <> ERROR_SUCCESS Then MsgBox LoadResString(Int(lang & "04")),"Error Message" Exit Sub End If svalue = Left(sbuffer,InStr(sbuffer,Chr(0)) - 1) '取出的值 FileCopy App.Path + "/verification.txt",svalue + "/data-common/verify/verification.txt" Open App.Path + "/verification.txt" For Output As #1 Print #1,data Print #1,line2 Close #1 MsgBox LoadResString(Int(lang & "02")),vbOKOnly,LoadResString(Int(lang & "01")) End Sub

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读