可以选择使用哪个应用程序打开文件
- 右键单击文件
- 打开用
- 选择默认程序...
- 浏览
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”。修复后,我甚至不需要再次关联所有视频扩展...这很完美,因为有很多视频扩展!