Vejo que você está escrevendo HKEY_CLASSES_ROOT
com esse arquivo reg na pergunta. Esta seção é uma visão mesclada de HKEY_LOCAL_MACHINE\Software\Classes
e HKEY_CURRENT_USER\Software\Classes
.
O motivo pelo qual seu arquivo funciona apenas para arquivos não associados anteriormente é que ele grava para HKEY_CLASSES_ROOT
redirecionar para a chave apropriada HKEY_LOCAL_MACHINE
(a seção para padrões do sistema e configurações para todos os usuários). No entanto, você terá um problema porque as configurações de associação de arquivos HKEY_CURRENT_USER
(que contêm configurações por usuário) substituem os padrões do sistema.
Além disso, se a extensão for controlada por uma associação "programas padrão", suas informações de associação de arquivos serão armazenadas HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\<.ext>
. Você pode verificar se o seu ramal tem essa associação, verificando a existência dessa chave.
Você pode editar seu .reg para funcionar com qualquer arquivo, incluindo arquivos associados anteriormente, duplicando-o para essas chaves em ambos HKEY_LOCAL_MACHINE
e HKEY_CURRENT_USER
. Da mesma forma, você pode remover a associação excluindo as chaves apropriadas nas duas seções (incluindo o FileExts
local).
Um arquivo .reg de trabalho para excluir uma associação para uma extensão específica se parece com isso (que exclui .blerg
associações):
Windows Registry Editor Version 5.00
; Created with Default Programs Editor
; http://defaultprogramseditor.com/
; Delete Extension
[-HKEY_LOCAL_MACHINE\Software\Classes\.blerg]
[-HKEY_CURRENT_USER\Software\Classes\.blerg]
[-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.blerg]
No entanto , se você preferir não precisar se informar sobre os internos do registro e os vários aspectos misteriosos da associação de arquivos do Windows, recomendo que você use o Editor de Programas Padrão para fazer essas alterações - você pode até exportar uma ação para um arquivo .reg, que parece atender perfeitamente às suas necessidades.
No seu caso, é tão simples como clicar File Type Settings
, então Delete an extension
. Selecione a extensão e, em vez de salvar no registro, pressione a seta pequena no Delete Extension
botão e clique em Save to .reg file...
. Isso produzirá um arquivo .reg completo e comentado dessa ação que você pode salvar ou distribuir para outras máquinas.