Windows 文件“打开方式”不能使用具有相同可执行文件名称的两个应用程序

Windows 文件“打开方式”不能使用具有相同可执行文件名称的两个应用程序

可以选择使用哪个应用程序打开文件

  1. 右键单击文件
  2. 打开用
  3. 选择默认程序...
  4. 浏览

C:\dir_new通过这种方式,人们可以导航到包含目标应用程序(例如)的目录(例如myapp.exe)。

如果所选可执行文件的文件名(将调用它选定,在本例中C:\dir_new\myapp.exe)与另一个应用程序的相同(将调用它第一的,例如,C:\dir_old\myapp.exe)已经存在于显示的“打开方式”窗口中,然后不是添加选定( C:\dir_new\myapp.exe) 到列表中,它选择已经存在的第一的C:\dir_old\myapp.exe)。

是否有可能(通过任何方式)myapp.exe同时让两个具有相同文件名()的应用程序用于“打开方式”?

PS:我使用的是Windows 7,但我怀疑其他版本不会出现这种情况。


编辑:我刚刚发现这个问题。它很相似,但其目的是解决问题,而不是能够同时使用这两个应用程序。无论如何,公认的回答也许可以用于当前目的。不过,它需要管理员权限。

也可能相关。

答案1

我找到了一个解决方法,如果您有管理员权限(以及足够现代的 Windows,我认为是 Vista 及更高版本),您可以使用它mklink来创建一个硬链接(如果您不熟悉类 UNIX 系统,它基本上是一个非常低级的快捷方式)如下:

C:\app1\app.exe <- Current app associated with filetype
C:\app2\app.exe <- Windows can't use this exe

在 Windows 命令提示符中运行:

mklink /H C:\app2\hard_link_to_app.exe C:\app2\app.exe

然后该文件就会出现并且可以代替文件关联来C:\app2\hard_link_to_app.exe使用。C:\app2\app.exe

我不知道这在某些情况下是否会引起问题,到目前为止对我来说效果很好。


我想知道是否可以用不同的名称设置 C:\dir_new\myapp.exe 的快捷方式,并请求使用该快捷方式打开。

上述评论中的建议不适用于常规的 Windows 快捷方式。

答案2

以下是手动修复此问题的一种方法:

找到注册表文件夹
\HKEY_CLASSES_ROOT\Applications<要更新的可执行文件名称>\shell\open\command
并通过设置应用程序的新路径来编辑/更新该注册表文件夹中存在的唯一密钥。

我的情况(如果你有时间阅读)

当我想使用从 Dropbox 文件夹中下载的新便携版本打开 .mp4 文件时,我也遇到了与 VLCPortable.exe 相同的问题。使用资源管理器上下文菜单的“打开方式”操作将 mp4 扩展名与此 nex 版本关联不起作用。旧 VLC 仍在打开我的视频文件。我发现 C:\Portables 的子文件夹中也安装了旧便携版本,它不是我 Dropbox 中已有的旧版 VLC。我使用任务管理器通过显示隐藏列“命令行”来解决这个问题,看来 Windows 实际上只检查可执行文件的名称,而不是文件关联的路径或驱动器号。

因此,在我的情况下,<要更新的可执行文件名称> 是“VLCPortable.exe”。修复后,我甚至不需要再次关联所有视频扩展...这很完美,因为有很多视频扩展!

相关内容