Windows 从注册表读取动态项

Windows 从注册表读取动态项,windows,vbscript,scripting,registry,Windows,Vbscript,Scripting,Registry,我需要从Windows读取动态注册表项。然后我需要将密钥的名称转储到XML '''''''''''''''''''''''''''''''' ' AMADEUS '''''''''''''''''''''''''''''''' StrKeyPath = "HKEY_LOCAL_MACHINE\SOFTWARE\Amadeus\1aAutoUpdate\Config\Cache\Certificates" key_name = "Amadeus" key_edition = "" key_rele

我需要从Windows读取动态注册表项。然后我需要将密钥的名称转储到XML

''''''''''''''''''''''''''''''''
' AMADEUS
''''''''''''''''''''''''''''''''
StrKeyPath = "HKEY_LOCAL_MACHINE\SOFTWARE\Amadeus\1aAutoUpdate\Config\Cache\Certificates"
key_name = "Amadeus"
key_edition = ""
key_release = ""
subKey = ""
oReg.GetStringValue HKEY_LOCAL_MACHINE,strKeyPath,subKey,key_text,
if IsNull(key_text) then
    ' do nothing
else
    result.WriteText "      <key>" & vbcrlf
    result.WriteText "          <key_name>" & escape_xml(key_name) & "</key_name>" & vbcrlf
    result.WriteText "          <key_text>" & escape_xml(key_text) & "</key_text>" & vbcrlf
    result.WriteText "          <key_release>" & escape_xml(key_release) & "</key_release>" & vbcrlf
    result.WriteText "          <key_edition>" & escape_xml(key_edition) & "</key_edition>" & vbcrlf
    result.WriteText "      </key>" & vbcrlf
    key_text = ""
    key_release = ""
    key_edition = ""
end if
<代码>''' “阿马迪斯 '''''''''''''''''''''''''''''''' StrKeyPath=“HKEY\U LOCAL\U MACHINE\SOFTWARE\Amadeus\1aAutoUpdate\Config\Cache\Certificates” key_name=“Amadeus” key_edition=“” 键_release=“” subKey=“” oReg.GetStringValue HKEY_LOCAL_机器,strKeyPath,子键,键文本, 如果为空(关键字文本),则 “什么也不做 其他的 result.WriteText“”&vbcrlf result.WriteText“”&escape\u xml(键名)&“&vbcrlf result.WriteText“”&转义xml(键文本)&“”&vbcrlf result.WriteText“”&escape\uXML(密钥发布)&“&vbcrlf result.WriteText“”&escape\uXML(密钥版)&“&vbcrlf result.WriteText“”&vbcrlf key_text=“” 键_release=“” key_edition=“” 如果结束 带有关键字/动态键的图像:


如果要枚举
[HKLM\SOFTWARE\…\Certificates]
的子密钥,需要使用该方法。此外,使用WMI注册表方法,必须将配置单元指定为数值常量。将其包含在路径中不起作用

试试这个:

Const HKLM = &H80000002

key = "SOFTWARE\Amadeus\1aAutoUpdate\Config\Cache\Certificates"

Set reg = GetObject("winmgmts://./root/default:StdRegProv")

rc = reg.EnumKey(HKLM, key, subKeys)
For Each sk In subKeys
  WScript.Echo sk
Next

你说的“动态”是什么意思?
证书
项下的子项(不是文件夹)可以具有任意名称?而且,你没有描述你面临的问题。无法枚举子项吗?你有错误吗?你需要给我们一些合作的东西。准确无误地说,这是一个亚类,它的名字叫坎比亚的地毯,它的名字叫塔纳,它的名字叫科迪戈!