怎樣用非管理員帳號讀取注冊表信息?
解决方案 »
- 怎么向文本框中的内容插入回车?
- VB的列表框控件中的columns属性
- 请教一题
- 二进制文件与位操作!
- 產生隨机函數
- 这个网站:http://www.softwww.com 中的一款聊天软件,要出售源代码,我准备买一套,大家认为这样的软件的源代码值多少钱
- 如何动态的修改表的结构-急!!!在线等
- 我用VB的打包程序,做的程序在我的机器上使用正常,在别人机器上就死机?
- 我在资源管理器中删除了Sql Server数据库xx.mdf 与 xx.log。想再在Enterprise Manager 中Delete该库信息,但提示出错!该怎办?
- 在线等关于一个进度条的算法。。。
- 请对acsii码有研究的高手们进来一下帮帮忙!
- 读取数据问题
Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
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.
Public 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 ' Note that if you declare the lpData parameter as String, you must pass it By Value.
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Public Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As LongPublic Const HKEY_CLASSES_ROOT = &H80000000
Public Const HKEY_CURRENT_USER = &H80000001
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const HKEY_USERS = &H80000003
Public Const HKEY_PERFORMANCE_DATA = &H80000004
Public Const HKEY_CURRENT_CONFIG = &H80000005Public Const REG_SZ = 1
Public Const REG_EXPAND_SZ = 2
Public Const REG_BINARY = 3 ' Free form binary
Public Const REG_DWORD = 4 ' 32-bit numberEnum iHKEY
KEY_CLASSES_ROOT = &H80000000
KEY_CURRENT_USER = &H80000001
KEY_LOCAL_MACHINE = &H80000002
KEY_USERS = &H80000003
KEY_PERFORMANCE_DATA = &H80000004
KEY_CURRENT_CONFIG = &H80000005
End EnumEnum iTYPE
SZ = 1
EXPAND_SZ = 2
Binary = 3
DWORD = 4
End EnumPublic Function REG_Write(ByVal inHKEY As iHKEY, ByVal inPath As String, ByVal inName As String, ByVal inType As iTYPE, ByVal inText As String) As Long
'On Error Resume Next
Dim hKey As Long
Dim DataSize As Long
Dim ret As Long DataSize = Len(inText) + 1
RegCreateKey inHKEY, inPath, hKey
If inType = 4 Then GoTo SetLong
RegSetValueEx hKey, inName, 0, inType, ByVal inText, DataSize
RegCloseKey hKey
Exit Function
SetLong:
inText = CLng(inText)
RegSetValueEx hKey, inName, 0, inType, inText, DataSize
RegCloseKey hKey
End FunctionPublic Function REG_Read(ByVal inHKEY As iHKEY, ByVal inPath As String, ByVal inName As String, ByVal inType As iTYPE) As String
'On Error Resume Next
Dim hKey As Long
Dim rSize As Long
Dim ret As Long
Dim OutTxt As String ret = RegOpenKeyEx(inHKEY, inPath, 0, 0, hKey)
ret = RegQueryValueEx(hKey, inName, 0, inType, vbNullString, rSize)
OutTxt = String(rSize, Chr(0))
ret = RegQueryValueEx(hKey, inName, 0, inType, ByVal OutTxt, rSize)
OutTxt = Left(OutTxt, InStr(OutTxt, Chr(0)))
REG_Read = OutTxt
RegCloseKey hKey
End FunctionPublic Function REG_Del(ByVal inHKEY As iHKEY, ByVal inPath As String, ByVal inName As String) As Boolean
On Error GoTo 1
Dim hKey As Long
RegOpenKeyEx inHKEY, inPath, 0, 0, hSubKey
RegDeleteValue hKey, inName
RegCloseKey hKey
Exit Function
1:
REG_Del = False
End Function