Onde as ações do menu de contexto são registradas no registro?

1

Eu estou usando WinMerge e gostaria de mudar o título do menu de contexto de Compare para &Compare (Então eu posso usar o AppsKey , C combinação para comparar arquivos facilmente.

Posso fazer isso? Ou preciso reescrever o próprio aplicativo para fazer isso?

    
por RonK 30.05.2011 / 12:27

2 respostas

0

Os menus de contexto para WinMerge são dinâmicos e não podem ser alterados no registro - eles são definidos dentro da Shell Extension DLL. (é mais provável que a maioria / todas as aplicações sejam assim.

Eu abri o arquivo c:\Program Files\WinMerge\ShellExtensionU.dll usando um dos plug-ins de Total Commander (não sei qual). Em seguida, navegue para. RT_STRING33.rc , que é o texto em inglês em inglês para o menu de contexto. Então eu mudei de:

STRINGTABLE
LANGUAGE 9, 1
BEGIN
  100, "ShellExtension"
  101, "WinMerge"
  102, "Open with WinMerge"
  103, "Please select no more than 2 items"
  104, "Compare"
  105, "Compare..."
  106, "Compare To"
  107, "Save this path. Select another path to compare with this path."
  109, "Compare to saved path (%1)"
  110, "Re-select First"
END

Para:

STRINGTABLE
LANGUAGE 9, 1
BEGIN
  100, "ShellExtension"
  101, "WinMerge"
  102, "Open with WinMerge"
  103, "Please select no more than 2 items"
  104, "&Compare"
  105, "Compare..."
  106, "&Compare To"
  107, "Save this path. Select another path to compare with this path."
  109, "Compare to saved path (%1)"
  110, "Re-select First"
END

Após um reinício, os menus de contexto foram atualizados.

    
por 30.05.2011 / 13:12
1

Os manipuladores de extensões de shell que tenho estão aqui. Provavelmente um bom lugar para começar.

HKCU\Software\Classes\*\ShellEx\ContextMenuHandlers         

HKCU\Software\Classes\Directory\ShellEx\ContextMenuHandlers     

HKLM\Software\Classes\*\ShellEx\ContextMenuHandlers 

HKLM\Software\Classes\Directory\ShellEx\ContextMenuHandlers         
    
por 30.05.2011 / 12:42