Array
(
)

Menu popup do Windows Explorer

Edumrp
   - 20 mar 2008

Ola
Estou desenvolvendo uma aplicação que irá gerencias arquivos gravados no computador. Gostaria que essa aplicação ficasse visível no Windows Explorer para que ao clicar com o botão direito do mouse sobre o nome do arquivo, aparecesse além das opções do Windows, também as opções da minha aplicação.
Por exemplo, quando instalamos o WinZip, lá nos arquivos do Windows Explorer, automaticamente aparecem as opções de compactar e descompactar arquivos.

Desde já agradeço.

Hugoestevam
   - 20 mar 2008

Bom dia,

Vou citar duas maneiras de se fazer isso.
A primeira consiste na mundança do registro do windows, pode ser feita manualmente ou automatizada pelo instalador do seu programa.

Crie um arquivo com o nome ´ChangeMenu.reg´ e adicione nele as seguintes linhas:
#Código

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell]
@=""

[HKEY_CLASSES_ROOT\*\shell\notepad]
@="* Notepad"

[HKEY_CLASSES_ROOT\*\shell\notepad\command]
@="notepad.exe \"¬l\""

Salve o arquivo e execute ele. Com isso será criado no registro os valores referentes ao MenuPopup no Windows Explorer

A segunda maneira pode ser feita programaticamente com C, para ver como faz, acesse o link abaixo:
http://www.theserverside.net/tt/articles/showarticle.tss?id=ShellExtensions

Espero que ajude, até mais

Edumrp
   - 20 mar 2008

Obrigado pela dica, mas fui executar o arquivo e aparece o seguinte erro:
O arquivo especificao não é um script do Registro. Você só pode importar somente arquivos do Registro.

obs: Editei o arquivo no Notepad.

Hugoestevam
   - 20 mar 2008

Boa Tarde,

Tente inserir manualmente no registro através do ´regedit´ as chaves:

Chave: ´HKEY_CLASSES_ROOT\*\shell´
Valor Default: ´´

Chave: ´HKEY_CLASSES_ROOT\*\shell\notepad´
Valor Default: ´* Notepad´

Chave: ´HKEY_CLASSES_ROOT\*\shell\notepad\command´
Valor Default: ´notepad.exe ¬l´

Acredito que de certo!