Arquivo em lote no menu do botão direito

Arquivo em lote no menu do botão direito

Estou criando um arquivo em lote que criptografará informações. Fiz isso quando clico com o botão direito no objeto e clico no botão "teste" para executar o arquivo em lote.

Em regediteu adicionei

Computer\HKEY_CLASSES_ROOT\*\shell\Test\command

os dados do comando são

C:\Users\%username%\Desktop\encrypt.bat

O que preciso fazer com os dados (na chave de registro que adicionei) e como eles são armazenados na minha variável?

Responder1

Você precisa associar ao tipo de arquivo o script que deseja iniciar nesse tipo. No Windows tudo isso é baseado na extensão (pelo menos no XP, não sei no 7, mas duvido que tenha mudado). Digamos que a extensão dos seus arquivos seja ".abc" e seu aplicativo seja:

c:\program files\dummy\process.bat

(Abandonei a variável no momento, não tenho certeza de como isso se comporta em arquivos .reg)

Portanto, basta editar um arquivo de texto config.reg que conterá o seguinte:

Windows Registry Editor Version 5.00

; the extension .abc gets associated with a file type
[HKEY_CLASSES_ROOT\.abc]
@="abc-file"

; the file-type gets a name (that appears in explorer in field "type")
[HKEY_CLASSES_ROOT\abc-file]
@="foo file"

; What will appear in the contextual menu when selecting an .abc file
[HKEY_CLASSES_ROOT\abc-file\shell\cmdname-1]
@="--- Process ! ----"

; What to do with it
; here, %1 is the file given as argument of the script
[HKEY_CLASSES_ROOT\abc-file\shell\cmdname-1\command]
@="\"c:\\program files\\dummy\\process.bat\" \"%1\""

Finalmente importe-o. Você Terminou.

Comentários adicionais:

  • Todas as aspas e barras invertidas estranhas existem para permitir o manuseio correto de nomes com espaços. Sim, agora ninguém tem espaços nos nomes dos arquivos. De qualquer forma, isso acontece!
  • É claro que você pode ter vários comandos para um tipo de arquivo. Basta enganar as duas últimas chaves do .reg (cmdname-1 ==> cmdname-2)
  • Você também pode associar diferentes extensões de arquivo ao mesmo tipo de arquivo. por exemplo, os arquivos HTML podem ter .htm ou .html
  • Você pode até associar uma ação a pastas. substitua o tipo de arquivo por "pasta"
  • Pode ser útil fornecer uma funcionalidade de “desinstalação”. Basta criar outro arquivo reg e prefixar as chaves criadas com '-'.

informação relacionada