VBS脚本写入注册表报错求助:无效根键问题排查
解决VBS脚本RegWrite报错:根键无效(错误80070005)
从你给出的错误信息来看,最直接的问题是注册表路径拼写错误——错误提示里的键路径是HKEY_CLASSES_ROOT\Applications\WScript.exeyUserData,明显是把WScript.exe和UserData的分隔搞砸了,大概率是你脚本里写路径时,WScript.exe后面漏加了反斜杠,或者不小心多打了一个字母(比如把.exe写成了.exey)。
给你几个具体的解决步骤:
修正注册表路径:
正确的目标路径应该是HKEY_CLASSES_ROOT\Applications\WScript.exe\UserData,重点要保证WScript.exe和UserData之间有反斜杠分隔,别让两个部分连在一起变成无效的键名。检查RegWrite的语法格式:
确保你的脚本调用RegWrite时参数正确,比如写入字符串值的完整示例:Set WshShell = CreateObject("WScript.Shell") ' 使用缩写HKCR代替HKEY_CLASSES_ROOT也可以,效果一致 Dim targetRegPath targetRegPath = "HKCR\Applications\WScript.exe\UserData\YourValueName" ' 最后一个参数指定值类型为REG_SZ(字符串值) WshShell.RegWrite targetRegPath, "你的字符串内容", "REG_SZ"关于错误代码80070005的补充说明:
虽然你说手动操作没问题,但如果路径修正后还是报这个权限错误,可以试试右键脚本选择「以管理员身份运行」——有时候脚本的运行上下文和你手动打开注册表编辑器的上下文权限会有细微差异,尤其是HKCR下的部分系统相关键值。
内容的提问来源于stack exchange,提问作者Kogol
相关产品推荐
相关产品推荐

