我使用technet中的示例尝试从HKLM \ Microsoft \ Windows \ CurrentVersion \ Run中读取dword /字符串,名为MyStartupExe ..它返回空..这个常规示例有效:
Const HKEY_CURRENT_USER = &H80000001
strComputer = "."
Set oReg=GetObject( _
"winmgmts:{impersonationLevel=impersonate}!\\" &_
strComputer & "\root\default:StdRegProv")
strKeyPath = "Console"
strValueName = "HistoryBufferSize"
oReg.GetDWORDValue _
HKEY_CURRENT_USER,strKeyPath,strValueName,dwValue
WScript.Echo "Current History Buffer Size: " & dwValue
我对它的改编不起作用。字符串和双字值存在于我正在寻找的密钥路径的注册表中。
const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
Set oReg=GetObject( _
"winmgmts:{impersonationLevel=impersonate}!\\" &_
strComputer & "\root\default:StdRegProv")
strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
strValueName = "MyStartUpExe"
oReg.GetDWORDValue _
HKEY_LOCAL_MACHINE,strKeyPath,strValueName,dwValue
WScript.Echo "MyStartupExe" & dwValue
答案 0 :(得分:0)
或者您可以使用Shell.RegRead
来读取您不知道值的数据类型的注册表值。如果RegRead
的返回码为0(成功),则存在一个reg值,否则如果返回码将是一些一般错误代码,例如&h800xxxxx
等等,则不存在reg值。要检查您的操作系统体系结构类型,请查询Win32_Processor.Architecture
值(其中'0'='x86'或'9'='x64')。