Passar o nome do arquivo arrastado para o atalho do Windows

3

Eu quero criar um atalho para uma ferramenta de linha de comando, para que quando eu arrastar arquivos para ele, ele passe o nome do arquivo para a ferramenta como parte dos argumentos da linha de comando (com citações em torno dele ou qualquer outro espaços de trabalho) e, em seguida, manter o terminal aberto após a conclusão. Especificamente:

cmd /k "C:\Program Files (x86)\SRecord\bin\srec_info.exe" "%<something goes here>" --guess

Isso é possível? O que vai depois do sinal de porcentagem? Como isso é chamado?

    
por endolith 08.02.2010 / 18:04

1 resposta

2

A resposta é simplesmente:

cmd /k "C:\Program Files (x86)\SRecord\bin\srec_info.exe" "%1"

Isso passará o caminho para o arquivo. Para testar isso, podemos fazer um simples arquivo bat de receptor test.bat :

echo %1
pause

Arraste para "C: \ Users \ user \ Desktop \ nospaces.exe", resultado:

C:\Users\user\Desktop\nospaces.exe

Arraste "C: \ Usuários \ usuário \ Desktop \ arquivo com espaços.exe", resultado:

"C:\Users\user\Desktop\file with spaces.exe"

Portanto, o srec_info.exe deve receber o caminho + nome do arquivo da mesma maneira que o arquivo bat.

    
por 08.02.2010 / 19:40