Desejo criar uma opção de menu de contexto com o botão direito do mouse no Windows 7 que seja sensível ao contexto e possa passar o nome do arquivo/pasta específico para um script de shell.
Eu sei que isso deve ser possível - por exemplo, se você tem um arquivo 7zip, pode clicar com o botão direito nele e dizer "Extrair aqui" e, de alguma forma, o destino (o arquivo .7z) é passado para o programa 7zip.
Em particular, tenho um script que pega um arquivo .c e o coloca dentro de uma listagem LaTeX e executa pdflatex para criar arquivos bem formatados para leitura. No entanto, preciso especificar o arquivo como um argumento de linha de comando. O que eu gostaria de fazer é fazer com que eu possa clicar com o botão direito do mouse em um arquivo e executar esse script automaticamente, passando o caminho do destino do clique com o botão direito para o argumento da linha de comando automaticamente.
Bem-vindo ao SuperUser!
Isso exigirá a edição do registro e depende se você deseja adicionar este item para todos os arquivos, apenas arquivos de uma extensão específica, pastas ou ambos.
Abra seu editor de registro e navegue até
HKEY_CLASSES_ROOT
. Você verá várias extensões de arquivo aqui - é isso que controla o menu de contexto.Adicionar um manipulador é o mesmo processo, independentemente do que você está anexando a esse item de menu, apenas importa onde você o coloca no registro.
O processo é como se segue:
shell
chave do que você está adicionando.Icon
à chave que você acabou de criar, com um caminho para o ícone como valor.command
"%1"
onde o nome do arquivo que está sendo passado para o programa deve ir em sua linha de comando.Quanto a onde este novo item de menu deve ir? Se você quer mostrar...
*
chaveDirectory
chave.