Vba 更改注册表值

Vba 更改注册表值,vba,registry,Vba,Registry,我正在尝试使用VBA创建一个.vbs脚本,该脚本在Windows注册表编辑器中更改注册表值。我正在尝试更改键中的(默认)值,该值为REG\u EXPAND\u SZ: HKEY\u CLASSES\u ROOT\txtfile\shell\open\command 要更改的代码当前为: Const HKEY_CLASSES_ROOT = &H80000000 strComputer = "." Set objRegistry = GetObject("winmgmts:\\" &am

我正在尝试使用VBA创建一个.vbs脚本,该脚本在Windows注册表编辑器中更改注册表值。我正在尝试更改键中的(默认)值,该值为REG\u EXPAND\u SZ

HKEY\u CLASSES\u ROOT\txtfile\shell\open\command

要更改的代码当前为:

Const HKEY_CLASSES_ROOT = &H80000000

strComputer = "."

Set objRegistry = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv")

strKeyPath = "txtfile\shell\open\command"
strValueName = ""
strValue = "Test Value"

objRegistry.SetStringValue HKEY_CLASSES_ROOT, strKeyPath, strValueName, strValue
问题是,当我使用
HKEY\u CLASSES\u ROOT
键时,它不起作用。我在
HKEY\U LOCAL\U机器
中更改一个值时测试了这个精确的代码。我认为需要在脚本中添加安全性或权限,才能将值更改为
HKEY_CLASSES\u ROOT

我该怎么做才能让这一切顺利进行