vbscript:注册表目录和注册表项列表

vbscript:注册表目录和注册表项列表,vbscript,registry,Vbscript,Registry,如果我的注册表路径为: HKEY_LOCAL_MACHINE\SOFTWARE\INTERSTAR\XFILES\CONFIG MANAGER\SYSTEM\COMPANIES 如何列出该路径/目录下的所有记录并访问DWORDs、REG_SZ和数据 提前感谢一个选项是使用WMI: Const HKEY_LOCAL_MACHINE = &H80000002 strComputer = "." Set oReg=GetObject("winmgmts:{impersonationLe

如果我的注册表路径为:

HKEY_LOCAL_MACHINE\SOFTWARE\INTERSTAR\XFILES\CONFIG MANAGER\SYSTEM\COMPANIES 
如何列出该路径/目录下的所有记录并访问DWORDs、REG_SZ和数据


提前感谢

一个选项是使用WMI:

Const HKEY_LOCAL_MACHINE = &H80000002

strComputer = "."

Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
    strComputer & "\root\default:StdRegProv")

strKeyPath = "SYSTEM\CurrentControlSet\Services"
oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys

For Each subkey In arrSubKeys
    Wscript.Echo subkey
Next

您将在此处找到更有用的注册表脚本:

一个选项是使用WMI:

Const HKEY_LOCAL_MACHINE = &H80000002

strComputer = "."

Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
    strComputer & "\root\default:StdRegProv")

strKeyPath = "SYSTEM\CurrentControlSet\Services"
oReg.EnumKey HKEY_LOCAL_MACHINE, strKeyPath, arrSubKeys

For Each subkey In arrSubKeys
    Wscript.Echo subkey
Next

您可以在这里找到更有用的注册表脚本:

事实上,我不知道在Windows脚本中还有其他方法可以进行注册表枚举。至少在没有事先安装第三方依赖项的情况下,这一切都是行不通的+1事实上,我不知道还有其他方法,尽管没有一种更“本地”的方法来做这件事似乎有点奇怪。如果你严格地看它,你几乎无法用“本地”VBScript做任何事情。该语言是为了广泛而轻松地使用COM对象而构建的,因此可以说使用COM对象是用VBScript完成任务的原生方式。是的,没错。但是,由于COM仍然是Windows的组件模型,人们希望COM对象可以用于诸如注册表访问之类的基本功能。对那份工作来说,WMI似乎很重……哦,那是你是对的,我一直在想为什么他们从来没有做过FileSystemObject的注册表挂件。我想这不会太难。事实上,我不知道在Windows脚本中使用任何其他方法进行注册表枚举。至少在没有事先安装第三方依赖项的情况下,这一切都是行不通的+1事实上,我不知道还有其他方法,尽管没有一种更“本地”的方法来做这件事似乎有点奇怪。如果你严格地看它,你几乎无法用“本地”VBScript做任何事情。该语言是为了广泛而轻松地使用COM对象而构建的,因此可以说使用COM对象是用VBScript完成任务的原生方式。是的,没错。但是,由于COM仍然是Windows的组件模型,人们希望COM对象可以用于诸如注册表访问之类的基本功能。对那份工作来说,WMI似乎很重……哦,那是你是对的,我一直在想为什么他们从来没有做过FileSystemObject的注册表挂件。我想这并不难。