Ejecutando enlace simbólico a exe - "La ruta especificada no existe"

19

Al intentar ejecutar un enlace simbólico que apunta a un archivo exe (en Windows 7), aparece la ventana "Abrir con". Al renombrarlo a un archivo ".exe", dice "La ruta especificada no existe. Verifique la ruta e intente nuevamente". Los enlaces simbólicos a otros destinos parecen funcionar bien.

Entonces, ¿hay alguna forma de ejecutar un enlace simbólico?

EDITAR: En el símbolo del sistema, ejecuto lo siguiente y MyProgram.exe se ejecuta las dos veces. Sin embargo, si hago doble clic en el enlace simbólico en el Explorador de Windows, falla con el mensaje de error anterior.

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
básico6
fuente
Asegúrese de que sus enlaces simbólicos apunten al lugar correcto: el objetivo es relativo a la ubicación del enlace, no al directorio actual al crear un enlace. (Este picaduras * nix usuarios a menudo.)
user1686
@grawity: No es cierto. Los enlaces simbólicos pueden usar rutas absolutas y relativas en * nix. Además, mencionó Windows 7.
Kurt Pfeifle
@pipitas: Tienes razón en que los enlaces simbólicos pueden usar rutas absolutas (nunca dije lo contrario), es solo que las personas a menudo usan ln -s ../../foo somedir/bary se equivocan. || Los enlaces simbólicos funcionan exactamente de la misma manera tanto en * nix como en Windows.
user1686

Respuestas:

8

Dado que la única otra respuesta realmente no "soluciona" el problema, solo lo reconoce, creo que vale la pena decir que tuve este mismo problema y descubrí el problema.

El problema para mí era los enlaces simbólicos relativos versus absolutos . Yo uso Link Shell Extension .

Al crear enlaces simbólicos absolutos , Explorer funciona bien. Al crear enlaces relativos , Explorer se atraganta con ellos.

Solo puedo adivinar que esto está relacionado de alguna manera con la forma en que Explorer calcula el directorio de trabajo. Tal vez algunos problemas de corte?

(Tenga en cuenta que en Win7 x64, al menos, puede que tenga que abrir LSEConfig.exe después de instalar la extensión, y alternar Absolute y luego Relative para que haga enlaces relativos, ya que la configuración predeterminada es algo impredecible, a veces relativa, a veces absoluta .)


fuente
Tengo LSE instalado, pero ¿dónde puedo encontrar LSEConfig.exe?
laggingreflex
Ah, necesitaba instalar la última versión. No estaba allí antes.
laggingreflex
55
Los enlaces absolutos no funcionan mejor que los enlaces relativos para mí en Windows 7 de 32 bits. Al menos no cuando se realiza a través de mklink [absoltelink] [absolutetarget].
weberc2
5

Funciona para mi....

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

D:\Develop\DateTouch>foo.exe

¿Cómo estás creando el enlace simbólico?


Editar :

ingrese la descripción de la imagen aquí

  • Windows 7 Service Pack 1 aplicado?
  • 64 bits?

Editar: veo un problema:

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

Así que asegúrese de que su archivo realmente exista.


Editar: creo que veo tu problema:

  • se inicia bien desde un símbolo del sistema
  • no se inicia desde el Explorador de Windows :

ingrese la descripción de la imagen aquí

Ian Boyd
fuente
Eso es exactamente lo que estoy haciendo. "mklink foo.exe c: \ windows \ system32 \ notepad-exe" o si el bloc de notas está en el directorio actual "mklink foo2.exe notepad.exe". Cuando intento abrir foo.exe o foo2.exe, recibo dicho mensaje de error. Tenga en cuenta que puedo abrir los archivos con un editor de texto reemplazando ".exe" con ".txt", por lo que el destino del enlace simbólico es correcto.
básico6
1
¡Si eso es! El Holy Explorer se niega a ejecutar enlaces simbólicos, pero el símbolo del sistema de Windows y otros administradores de archivos como muCommander no lo hacen. Eso resuelve mi problema, ¡gracias!
basic6
44
Bueno, no resuelve el problema; pero explica cómo reproducirlo. No pude encontrar nada en el monitor de proceso que sugiriera por qué Explorer no puede iniciarlo. Incluso escribí una solicitud y una llamada ShellExecute, y se inicia bien.
Ian Boyd
1
Voto negativo por no abordar el problema real.
weberc2
2

Todo un necro, pero todavía tenía la misma pregunta y esta era la única que abordaba este problema.

¡Pero aquí está mi solución! Si "C: \ app.exe" le causa problemas por no iniciarse debido al explorador, simplemente cree "app.bat", con "C: \ app.exe" como contenido. Al iniciar app.bat se iniciará app.exe desde la línea de comandos.

El problema ahora es que lo ejecuta desde la ubicación de app.exe, por lo que los enlaces relativos en el .exe pueden dar problemas ahora, solo funcionan los programas simples. Todavía puede hacer un .bat que vaya a la ubicación de destino y luego ejecute el .exe, pero estamos a millas de "solo un enlace simbólico".

Wolfzoon
fuente