Ao tentar executar um link simbólico que aponta para um arquivo exe (no Windows 7), a janela "Abrir com" é exibida. Ao renomeá-lo para um arquivo ".exe", ele diz "O caminho especificado não existe. Verifique o caminho e tente novamente.". Links simbólicos para outros destinos parecem funcionar bem.
Então, existe alguma maneira de executar um link simbólico?
EDIT: No prompt de comando, eu executo o seguinte e o MyProgram.exe é executado nas duas vezes. No entanto, se eu clicar duas vezes no link simbólico no Windows Explorer, ele falhará com a mensagem de erro acima.
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
windows-7
symbolic-link
basic6
fonte
fonte
ln -s ../../foo somedir/bar
e entender a coisa errada. || Os links simbólicos funcionam exatamente da mesma maneira no * nix e no Windows.Respostas:
Como a única outra resposta realmente não "corrige" o problema, apenas o reconhece, acho que vale a pena dizer que tive o mesmo problema e descobri o problema.
O problema para mim foi relativo versus links simbólicos absolutos . Eu uso a Extensão do Shell de Link .
Ao criar links simbólicos absolutos , o Explorer funciona bem. Ao criar links relativos , o Explorer os engasga.
Só posso supor que isso esteja relacionado à maneira como o Explorer calcula o diretório de trabalho? Talvez alguns problemas de barra?
(Observe que, no Win7 x64, pelo menos, talvez seja necessário abrir o LSEConfig.exe após a instalação da extensão e alternar entre Absolute e Relative para que ele faça links relativos, pois a configuração padrão é um tanto imprevisível, às vezes relativa, às vezes absoluta .)
fonte
Funciona para mim....
Como você está criando o link simbólico?
Editar :
Editar: vejo um problema:
Portanto, verifique se o seu arquivo realmente existe.
Edit: acho que vejo seu problema:
fonte
ShellExecute
, e ele foi lançado bem.Bastante necro, mas eu ainda tinha a mesma pergunta e essa foi a única que abordou esse problema.
Mas aqui está minha solução alternativa! Se "C: \ app.exe" fornecer problemas para não iniciar por causa do explorer, basta criar "app.bat", com "C: \ app.exe" como conteúdo. Iniciar o app.bat iniciará o app.exe na linha de comando.
O problema agora é que ele é executado a partir do local do app.exe, portanto, os links relativos no .exe podem causar problemas agora, apenas programas simples funcionam. Ainda é possível criar um .bat que vá para o local de destino e execute o .exe, mas estamos a quilômetros de "apenas um link simbólico".
fonte