Atualmente estou tentando integrar um programa ao meu shell, o programa em questão é uma ferramenta CLI que possui várias opções de arquivos passados para ele. Eu sei que é possível executar 'código' no registro até certo ponto. Pelo menos o que parece ter uma sintaxe semelhante ao script em lote. Um exemplo é o uso de %1
se você deseja passar um arquivo para um determinado programa. O programa em questão descompacta um determinado tipo de arquivo, se eu usar a linha de comando diretamente posso usar o seguinte código para extrair o conteúdo para uma pasta que tem o mesmo nome do infile que forneço:
Decompiler.exe -i %* -o "%~n1"
Não sei a terminologia exata para o %~n1
curinga, mas conheço outros usos para ele, como %~nx1
( nome e e x tensão do argumento 1) . Com isso de lado, se eu usar esse mesmo curinga no registro, ele será enviado para uma pasta chamada %~n1
. É possível usar esse curinga no registro para obter o mesmo efeito como se fosse usado na CLI ou existe uma alternativa equivalente?
A sintaxe de
%~n1
é chamada Substituições de variáveis .Isso é tratado pelo CMD (
cmd.exe
), que também executa.bat
arquivos, mas não é tratado quando incluído no registro.Você deve criar um
.bat
arquivo que faça qualquer tarefa necessária e que inclua Substituições de variáveis conforme necessário e, em seguida, chame esse arquivo do registro.