Виконання символьного посилання на exe - "Вказаний шлях не існує"


19

При спробі виконати символічне посилання, яке вказує на файл EXE (у Windows 7), з'явиться вікно "Відкрити з". Перейменуючи його у файл ".exe", він говорить: "Вказаний шлях не існує. Перевірте шлях, а потім повторіть спробу." Здається, посилання на інші напрямки спрацьовують.

Так чи є спосіб виконати символьне посилання?

EDIT: У командному рядку я виконую наступне і 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

Переконайтеся, що ваші символьні посилання вказують на потрібне місце - ціль щодо місця розташування посилання, а не поточного каталогу під час створення посилання. (Це часто кусає * nix користувачів.)
user1686

@grawity: Неправда. Символьні посилання можуть використовувати абсолютний, а також відносний шлях на * nix. Також він згадав Windows 7.
Курт Пфайфл

@pipitas: Ви маєте рацію, що символьні посилання можуть використовувати абсолютні шляхи (я ніколи не говорив інакше), просто люди часто користуються ln -s ../../foo somedir/barі отримують неправильну річ. || Символьні посилання працюють точно так само, як у * nix та Windows.
користувач1686

Відповіді:


8

Оскільки єдина інша відповідь насправді не «виправляє» проблему, а лише визнає це, я думаю, варто сказати, що у мене був цей самий питання, і я виявив проблему.

Питання для мене було відносним проти абсолютних посилань. Я використовую розширення оболонки Link .

Створюючи абсолютні посилання, Explorer добре працює. Створюючи відносні посилання, Explorer задихається від них.

Я можу лише здогадуватися, що це якимось чином пов’язане з тим, як Explorer обчислює робочий каталог? Можливо, якісь похилі проблеми?

(Зверніть увагу, що на Win7 x64, принаймні, вам, можливо, доведеться відкрити LSEConfig.exe після встановлення розширення та переключити Absolute, а потім відносно, щоб зробити його відносними посиланнями, оскільки конфігурація за замовчуванням дещо непередбачувана, іноді відносна, іноді абсолютна .)


У мене встановлено LSE, але де я можу знайти LSEConfig.exe?
відставання

Ах, мені потрібно було встановити останню версію. Раніше її там не було.
laggingreflex

5
Абсолютні посилання для мене не працюють краще, ніж відносні посилання під Windows 7, 32-розрядні. Принаймні, не тоді, коли робиться через mklink [absolutelink] [абсолютний ціль].
weberc2

5

Для мене працює ...

D:\Develop\DateTouch>mklink foo.exe TouchDate.exe
symbolic link created for foo.exe <<===>> TouchDate.exe

D:\Develop\DateTouch>foo.exe

Як ви створюєте символічне посилання?


Редагувати :

введіть тут опис зображення

  • Застосовано пакет оновлення 1 для Windows 7?
  • 64-розрядні?

Edit: я бачу в питання:

C:\Users\ian.AVATOPIA>mklink foo4.exe c:\asdfasdf\adfasdf.exe
symbolic link created for foo4.exe <<===>> c:\asdfasdf\adfasdf.exe

Тому переконайтесь, що ваш файл існує.


Редагувати: я думаю, я бачу вашу проблему:

  • він запускає штраф із командного рядка
  • не вдалося запустити з Windows Explorer :

введіть тут опис зображення


Саме цим я і займаюся. "mklink foo.exe c: \ windows \ system32 \ notepad-exe" або якщо блокнот знаходиться у поточному каталозі "mklink foo2.exe notepad.exe". При спробі відкрити foo.exe або foo2.exe, я отримую повідомлення про помилку. Зауважте, що я можу відкрити файли за допомогою текстового редактора, замінивши ".exe" на ".txt", тому ціль символьного посилання є правильною.
базовий6

1
ТАК, це все! Святий Провідник відмовляється виконувати символьні посилання, але командний рядок Windows та інші файлові менеджери, такі як muCommander, цього не роблять. Це вирішує мою проблему - дякую!
basic6

4
Ну це не вирішує проблему; але це пояснює, як її відтворити. Я не міг знайти нічого в моніторі процесів, що б натякнуло, чому Explorer не вдається запустити його. Я навіть написав заяву та дзвінок ShellExecute, і це запускає чудово.
Ян Бойд

1
Коротка відповідь за невиконання актуального питання.
weberc2

2

Досить некро, але у мене все-таки було те саме питання, і це було єдине, що займалося цим питанням.

Але ось мій спосіб вирішення! Якщо "C: \ app.exe" заважає не запускатися через Explorer, просто створіть "app.bat" із вмістом "C: \ app.exe". Запуск app.bat запустить app.exe з командного рядка.

Проблема полягає в тому, що він виконує його з розташування app.exe, тому відносні посилання в .exe можуть створити проблеми зараз, працюють лише прості програми. Ви все ще можете зробити .bat, який переходить до цільового місця, а потім запускає .exe, але тоді ми в милях від "просто символьної посилання".

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.