Vejo que você está escrevendo para HKEY_CLASSES_ROOT
com esse arquivo reg na pergunta. Esta seção é uma exibição mesclada de HKEY_LOCAL_MACHINE\Software\Classes
e HKEY_CURRENT_USER\Software\Classes
.
O motivo pelo qual seu arquivo só funciona para arquivos anteriormente não associados é que grava em HKEY_CLASSES_ROOT
redirecionamento para a chave apropriada em 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 em 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 de "programas padrão", as informações de associação de arquivos serão armazenadas em HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\<.ext>
. Você pode verificar se sua extensão tem essa associação verificando a existência dessa chave.
Você pode editar seu .reg para trabalhar em qualquer arquivo, incluindo arquivos associados anteriormente, duplicando-o para as chaves em ambos HKEY_LOCAL_MACHINE
e HKEY_CURRENT_USER
. Da mesma forma, você pode remover a associação excluindo as chaves apropriadas em ambas as seções (incluindo a localização FileExts
).
Um arquivo .reg funcional para excluir uma associação de uma extensão específica é semelhante a este (que exclui .blerg
assocations):
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 ter que se informar sobre os aspectos internos do Registro e os vários aspectos misteriosos da associação de arquivos do Windows, recomendo que você use Editor de Programas Padrão para fazer essas alterações - você pode até mesmo exportar uma ação para um arquivo .reg, que parece se encaixar perfeitamente às suas necessidades. p>
No seu caso, é tão simples quanto clicar em File Type Settings
e, em seguida, em Delete an extension
. Selecione a extensão e, em vez de salvar no registro, pressione a pequena seta no botão Delete Extension
e clique em Save to .reg file...
. Isso produzirá um arquivo .reg completo e comentado sobre essa ação que você pode salvar ou distribuir para outras máquinas.