尝试执行指向 exe 文件的符号链接时(在 Windows 7 上),会出现“打开方式”窗口。将其重命名为“.exe”文件时,系统会提示“指定的路径不存在。请检查路径,然后重试。”。指向其他目标的符号链接似乎可以正常工作。
那么有什么办法可以执行符号链接吗?
编辑:在命令提示符中,我执行以下命令,MyProgram.exe 两次都运行。但是,如果我在 Windows 资源管理器中双击符号链接,则会失败并显示上述错误消息。
C:\Temp>mklink SomeProgram.exe MyProgram.exe
symbolic link created for Backup.exe <<===>> Backup-1.0.1.exe
C:\Temp>SomeProgram.exe
C:\Temp>del SomeProgram.exe
C:\Temp>mklink SomeProgram.exe C:\Temp\MyProgram.exe
symbolic link created for Backup.exe <<===>> C:\Temp\Backup-1.0.1.exe
C:\Temp>SomeProgram.exe
答案1
由于唯一的其他答案并没有真正“解决”该问题,而只是承认了这一点,所以我认为值得说一下我也遇到了同样的问题,并且发现了该问题。
对我来说问题是相对的对比绝对符号链接。我使用链接外壳扩展。
创建时绝对符号链接,Explorer 工作正常。创建时相对的链接,Explorer 会阻塞它们。
我只能猜测这与 Explorer 计算工作目录的方式有关?也许是一些斜线问题?
(请注意,至少在 Win7 x64 上,您可能必须在安装扩展后打开 LSEConfig.exe,然后切换 Absolute 和 Relative 以使其建立相对链接,因为默认配置有点不可预测,有时是相对的,有时是绝对的。)
答案2
对我有用....
D:\Develop\DateTouch>mklink foo.exe TouchDate.exe
symbolic link created for foo.exe <<===>> TouchDate.exe
D:\Develop\DateTouch>foo.exe
您如何创建符号链接?
编辑:
- 是否应用了 Windows 7 Service Pack 1?
- 64 位?
编辑:我懂了一个问题:
C:\Users\ian.AVATOPIA>mklink foo4.exe c:\asdfasdf\adfasdf.exe
symbolic link created for foo4.exe <<===>> c:\asdfasdf\adfasdf.exe
因此请确保您的文件确实存在。
编辑:我想我明白了你的问题:
- 它从一个命令提示符
- 无法启动Windows资源管理器:
答案3
相当可怕,但我仍然有同样的问题,而这是唯一解决这个问题的方法。
但是这是我的解决方法!如果“C:\app.exe”因为资源管理器而无法启动,只需创建“app.bat”,内容为“C:\app.exe”。启动 app.bat 将从命令行启动 app.exe。
现在的问题是它从 app.exe 的位置执行,因此 .exe 中的相对链接现在可能会出现问题,只有简单的程序才能工作。您仍然可以制作一个 .bat,转到目标位置,然后运行 .exe,但我们距离“仅一个符号链接”还差得很远。