如何恢复与系统关联的 .bat 文件(双击时使它们运行)?

jus*_*eve 72 windows file-association

为了让系统再次运行 .bat 文件(双击它们时),我应该将“打开方式...”属性设置为什么?

不知何故,我的老板说服了他的工作站,.bat文件处理程序应该是 Word。现在,当双击.bat文件时,它们会在 Word 中打开。

小智 60

我认为您必须从注册表中删除 .bat 文件关联(使用 regedit 程序)。

根据LockerGnome上的这个论坛帖子,您需要删除此键下的注册表设置:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat
Run Code Online (Sandbox Code Playgroud)

为了安全起见,您可能希望在执行此操作之前备份注册表。

  • 对于那里的极简主义者,我要补充一点,我只删除 UserChoice 子文件夹就成功了。一旦它消失,默认的执行行为就会恢复。HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat\UserChoice (30认同)

Fac*_*tic 34

此注册表项文件将执行此操作。复制并粘贴到名为“restore.reg”的文本文件中,双击它合并到注册表中。

它将清除您可能为 .bat 文件意外创建的任何每用户设置,并恢复系统默认值,包括.bat<->batfile文件类型关系以及启动.bat 文件的实际参数batfile

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.bat]
[-HKEY_CURRENT_USER\Software\Classes\.bat]
[-HKEY_CURRENT_USER\SOFTWARE\Classes\batfile]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.bat]
@="batfile"

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\batfile\shell\open\command]
@="\"%1\" %*"
Run Code Online (Sandbox Code Playgroud)


小智 11

上面的答案都没有为我正在使用的机器修复它,但是修复它的是启动管理外壳并运行

assoc .bat=batfile
assoc .cmd=batfile
Run Code Online (Sandbox Code Playgroud)

  • 这在 Windows 10 上对我有用 (3认同)

小智 10

我有同样的问题(在 Windows 7 中);批处理文件在记事本中打开而不是被执行。

更正 .bat 文件的以下注册表(根据它工作的任何其他机器)将使批处理正确执行:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\

.bat                --> default-> Value not set
.bat/OpenWithList   --> default-> Value not set
.bat/OpenWithProgIds--> default-> Value not set
                        batfile-> Zero length binary values 
Run Code Online (Sandbox Code Playgroud)

保留这些条目,但删除 下的所有其他条目.bat。双击刷新并运行批处理文件 - 它将正确运行。