Como adicionar um item de menu de contexto do Windows Explorer com funcionalidade personalizada?

13

Gostaria de clicar com o botão direito do mouse em um arquivo no Windows Explorer, depois no submenu 7-Zip e, em seguida, em algo como ' Adicionar ao arquivamento ... ', Eu gostaria,' Adicionar a <filename>-<today's date>.7z '

Uma imagem vale mais que mil palavras:

Esta seria uma personalização não oferecida atualmente pelo 7-Zip (até onde eu saiba).

    
por Umber Ferrule 03.11.2009 / 17:53

1 resposta

10

7-zip é código aberto, então eu suponho que você poderia implementar esse recurso você mesmo (tee hee) ou petição / pagar aos desenvolvedores do núcleo para fazer isso por você. Em vez disso:

Você não pode fazer isso configurando as opções de 7-zip, mas pode fazê-lo criando um novo item de menu de contexto. O texto não será dinâmico como seu modelo, mas os resultados serão os mesmos.

Basicamente, o que você precisa fazer é criar um script em lote que inicie o 7-zip com os parâmetros certos para pegar o arquivo especificado e adicioná-lo a um arquivo, fornecendo a data de hoje como o nome do arquivo.

Esse script fará isso (com base no script de aqui ). Cole isso em um novo arquivo de texto chamado 7ztoday.bat :

@echo off
FOR /F "TOKENS=1* DELIMS= " %%A IN ('DATE/T') DO SET CDATE=%%B
FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET mm=%%B
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('echo %CDATE%') DO SET dd=%%B
FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('echo %CDATE%') DO SET yyyy=%%B

"%programfiles%-zipz.exe" a %mm%%dd%%yyyy%.7z %1

Em seguida, usando um utilitário como Editor de programas padrão , podemos adicionar um novo item de menu de contexto para arquivos que aponta para este script em lote. Por conveniência, eu exportei essa alteração como um arquivo reg, então você pode simplesmente copiar isso em um novo arquivo de texto que termina com .reg e clicar duas vezes para mesclar no registro.

Windows Registry Editor Version 5.00

; Created with Default Programs Editor 
; http://defaultprogramseditor.com/

; Add Verb
[HKEY_CURRENT_USER\Software\Classes\*\shell\AddToTodaysArchive_verb_key]
@="Add file to today's archive"
[HKEY_CURRENT_USER\Software\Classes\*\shell\AddToTodaysArchive_verb_key\command]
@="\"C:\Users\Public\7ztoday.bat\" \"%1\""

Com relação às configurações do 7-zip:

Esse submenu específico é registrado por 7-zip, e você pode configurar o que aparece no submenu a partir das opções desse programa, abrindo o Gerenciador de Arquivos 7-Zip e indo para Tools - > Options - > Plugins , selecione "7-Zip" e clique em Options . Na lista nessa janela, estão todas as opções incorporadas disponíveis para essa lista secundária no menu de contexto.

    
por 03.11.2009 / 20:07