Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vbscript VBS赢得';不修改注册表_Vbscript_Registry - Fatal编程技术网

Vbscript VBS赢得';不修改注册表

Vbscript VBS赢得';不修改注册表,vbscript,registry,Vbscript,Registry,我正在编写一个vbscript,需要修改几个注册表项。问题是,当Chrome或Firefox从我们的一台计算机上删除后,您将无法再打开web浏览器之外的链接。这是因为计算机仍将删除的浏览器视为默认浏览器。我还有其他几个注册表修改正在工作,但当我运行脚本时,它不会更改以下注册表项: 'does not work strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\" wShell.RegWrite st

我正在编写一个vbscript,需要修改几个注册表项。问题是,当Chrome或Firefox从我们的一台计算机上删除后,您将无法再打开web浏览器之外的链接。这是因为计算机仍将删除的浏览器视为默认浏览器。我还有其他几个注册表修改正在工作,但当我运行脚本时,它不会更改以下注册表项:

    'does not work
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\"
    wShell.RegWrite strRoot,"" & Chr(34) & "%1" & Chr(34) & ",,-1,0,,,,"
    'does not work
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\NoActivateHandler"
    wShell.RegWrite strRoot,""
    'does not work
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\Application\"
    wShell.RegWrite strRoot,"IExplore"
    'does not work
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\Topic\"
    wShell.RegWrite strRoot,"WWW_OpenURL"

这也需要应用于同一路径中的“HTTP”键,同样,“ddeexec”文件夹中的任何内容都不能更改。但是我不认为这是权限问题,因为我可以进入regedit并手动更改它,没有问题

您是在本地还是远程运行此脚本?机器是否运行任何防病毒软件?您正在使用哪个版本的Windows

脚本访问的注册表权限可以不同于本地用户帐户的权限。也就是说,使用registry Editor成功更改注册表项并不一定意味着您可以从脚本中执行此操作

另外,打开此系统上的任何剩余浏览器都会提示用户将其设置为默认浏览器。如果他们选择允许,它将为您重置所有这些设置。

试试看

HKEY_CLASSES_ROOT\https\Shell\open\ddeexec\
而不是

HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\

该脚本设计为在系统帐户下远程运行,但即使我只是在自己的计算机上使用自己的凭据运行它,结果也是相同的。这将用于所有Windows XP SP3 32位的计算机。他们都安装了Symantec Endpoint Protection。由于组策略限制,打开IE不会提示设置默认值。我认为,无论是谁想象了这些,都认为在IE中限制该设置会阻止其他浏览器成为默认浏览器,但事实并非如此。