在Windows 7中使用“Git Bash Here”时,出现错误 - “没有适用于文件扩展名.vbs的脚本引擎”。

38
我已经安装了最新版本的Git for Windows。当我使用右键菜单选项“Git Bash Here”时,会出现以下错误:

没有适用于文件扩展名.vbs的脚本引擎

有什么办法可以解决吗?

8个回答

61

这个问题是由于将.vbs文件与非默认的程序(如Notepad++)关联所导致的。为了解决这个问题,可以以管理员身份运行Notepad++并移除.vbs文件的关联。如果不确定是哪个程序导致了问题,可以在开始菜单中搜索“更改与文件扩展名关联的文件类型”,然后确保将Microsoft Windows Based Script Host设置为当前默认程序。


1
对于那些不太熟悉Notepad++的人来说,你在哪里设置文件关联? - riqitang
1
Notepad++版本7.3.3的说明(旧版本可能不同):如果启用了多实例,您可能需要关闭除一个Notepad++实例之外的所有实例。转到“设置”->“首选项”,然后从左侧列表中选择“文件关联”。然后从右侧的“已注册扩展名”列表中选择“.vbs”(可能需要向下滚动),并单击左箭头(<-)将其从该列表中删除。 - GlennFromIowa
我已经更改了.vbs文件的默认程序,但它并没有单独解决问题。直到我从Notepad++关联文件中删除了.vbs,才得以解决。 - MFedatto

42
在我的情况下,我能够通过重新关联vbs文件来解决这个问题,具体操作如下:打开cmd-->以管理员身份运行 --> 输入以下命令并按回车键:

assoc .vbs=VBSFile

请注意,html标签需要保留。

2
这是我唯一能做到的方法。谢谢 :) - lkanab
尝试解决方案时出现“拒绝访问,.vbs 处理过程中发生错误”的错误。该怎么办? - Bharti Mohane
@BhartiMohane:正如解决方案中所提到的,您是否以管理员身份运行了cmd? - khichar.anil

6

2
谢谢,这是唯一在Win 7 64位上有效的修复方法! - Taptronic
3
链接似乎已经失效。 - LonelyDeveloper

5
我可以确认将Notepad++与.VBS文件关联会导致此问题。
对于Windows 10,如果您导航到“按文件类型选择默认应用程序”,您将无法将.vbs重新关联到“Microsoft Windows基础脚本宿主”;该界面基本上会显示相同/原始问题 - 没有为文件类型安装的应用程序。

enter image description here

khichar.anil提供的CMD命令行解决方案在Windows 10上完美运行。请确保以管理员身份运行。

enter image description here

GUI 将稍后更新,请耐心等待:

enter image description here


5
我是一名有用的助手,可以为您翻译文本。
我在使用NVM在Windows 10 64位专业版上切换节点版本时遇到了问题。唯一有效的解决方法是修复注册表项。我不是注册表项如何影响您的系统的专家,因此请自行承担风险步骤1:创建vbsfix.reg文件 步骤2:在记事本(或其他文本编辑器)中打开它 步骤3:复制并粘贴以下代码:
Windows Registry Editor Version 5.00

[-HKEY_CLASSES_ROOT\.vbs]

[HKEY_CLASSES_ROOT\.vbs]
@="VBSFile"

[HKEY_CLASSES_ROOT\.vbs\PersistentHandler]
@="{5e941d80-bf96-11cd-b579-08002b30bfeb}"

[-HKEY_CLASSES_ROOT\VBSFile]

[HKEY_CLASSES_ROOT\VBSFile]
"FriendlyTypeName"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,\
  00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,\
  32,00,5c,00,77,00,73,00,68,00,65,00,78,00,74,00,2e,00,64,00,6c,00,6c,00,2c,\
  00,2d,00,34,00,38,00,30,00,32,00,00,00
@="VBScript Script File"

[HKEY_CLASSES_ROOT\VBSFile\DefaultIcon]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
  00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,57,00,53,00,\
  63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,2c,00,32,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\ScriptEngine]
@="VBScript"

[HKEY_CLASSES_ROOT\VBSFile\ScriptHostEncode]
@="{85131631-480C-11D2-B1F9-00C04F86C324}"

[HKEY_CLASSES_ROOT\VBSFile\Shell]
@="Open"

[HKEY_CLASSES_ROOT\VBSFile\Shell\Edit]

[HKEY_CLASSES_ROOT\VBSFile\Shell\Edit\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,\
  6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,22,00,20,00,25,\
  00,31,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open]

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,57,00,\
  53,00,63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,\
  00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open2]
@=hex(2):4f,00,70,00,65,00,6e,00,20,00,26,00,77,00,69,00,74,00,68,00,20,00,43,\
  00,6f,00,6d,00,6d,00,61,00,6e,00,64,00,20,00,50,00,72,00,6f,00,6d,00,70,00,\
  74,00,00,00
"MUIVerb"=hex(2):40,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,\
  6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,\
  00,77,00,73,00,68,00,65,00,78,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,2d,00,\
  34,00,35,00,31,00,31,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Open2\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,43,00,\
  53,00,63,00,72,00,69,00,70,00,74,00,2e,00,65,00,78,00,65,00,22,00,20,00,22,\
  00,25,00,31,00,22,00,20,00,25,00,2a,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\Shell\Print]

[HKEY_CLASSES_ROOT\VBSFile\Shell\Print\Command]
@=hex(2):22,00,25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
  00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,4e,00,\
  6f,00,74,00,65,00,70,00,61,00,64,00,2e,00,65,00,78,00,65,00,22,00,20,00,2f,\
  00,70,00,20,00,25,00,31,00,00,00

[HKEY_CLASSES_ROOT\VBSFile\ShellEx]

[HKEY_CLASSES_ROOT\VBSFile\ShellEx\DropHandler]
@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"

[HKEY_CLASSES_ROOT\VBSFile\ShellEx\PropertySheetHandlers]

[HKEY_CLASSES_ROOT\VBSFile\ShellEx\PropertySheetHandlers\WSHProps]
@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"

[-HKEY_CLASSES_ROOT\SystemFileAssociations\.vbs]

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.vbs]

第四步:保存并以管理员身份运行。

如果您发现问题,请告诉我。


虽然更改注册表项看起来有点不可靠,但这是唯一适用于我的解决方案 :) - Jasper
当我第一次接触到这个解决方案时,我也是这么认为的。仍然无法确认它实际上是做什么的,但它确实对我有用。 - vullnetyy
太棒了,你真是个天才! - undefined

4

我尝试了上述方法,但在Windows 10上均未能正常工作。最终我去了Windows注册表,并将HKEY_CLASSES_ROOT.vbs的默认值更改为VBSFile,这样才能使其正常工作。


你能否在这个答案中添加更多细节,可能还有一张截图?最终这是对我有效的,但是在注册表编辑器中,HKEY_CLASSES_ROOT.vbs 条目下有一个子文件夹,所以我不确定是设置顶级还是子项(最终是父级)。 - Grant Humphries
@GrantHumphries 抱歉,这已经是两年前的事了,我的记忆从那时起就一次又一次地被抹去了! :) - LonelyDeveloper

3
尽管这是一个过时的帖子,但我想与其他人分享这个问题。
我遇到了与OP相同的问题,但.vbs文件已经与“Microsoft Console Based Script Host”相关联。
这在Windows Server 2012机器上发生,.vbs文件被一个.bat文件调用。
对我来说解决方案是运行,或者运行。这样就为该脚本关联了一个脚本引擎。

1

我在使用WEBuilder时遇到了同样的问题。为了解决这个问题,我进入了选项/首选项/文件/关联,并删除了与.vbs文件的关联。祝好运!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接