Como você associa a extensão de arquivo .exe a um programa no Windows?

16

Há alguns anos vi alguém fazer uma brincadeira com alguém associando a extensão de arquivo .exe ao Internet Explorer. Isso fez com que o Internet Explorer fosse aberto toda vez que a pessoa queria iniciar um programa.

Infelizmente, esqueci como isso foi feito. Tentei usar a ferramenta Default Programs > Set Associations do Painel de Controle, mas ela não listou .exe .

Como alguém poderia definir essa associação de arquivos e, talvez mais importante, como poderia ser desconsiderada?

    
por Peter Olson 07.11.2011 / 15:06

2 respostas

20

Ao fazer "brincadeiras" desse jeito, não basta apenas seguir um tutorial passo-a-passo ou um script em lote; É melhor saber algo sobre como os dados reais são armazenados - fica mais fácil recuperar depois.

Todas as associações de arquivos são mantidas no Registro, que podem ser editadas usando regedit ou reg . O shell procura por eles em HKEY_CLASSES_ROOT , que é uma visualização mesclada de HKEY_LOCAL_MACHINE\Software\Classes (todo o sistema) e HKEY_CURRENT_USER\Software\Classes (usuário local).

  • [ HKEY_CLASS_ROOT ]
    • [ .txt ]
      • (padrão) =" txtfile " - ponteiro para outra chave em HKCR
    • [ txtfile ]
      • (padrão) =" Text Document " - descrição textual exibida no Explorer
      • [ shell ] - as ações a serem usadas para o clique duplo e o menu de contexto
        • (padrão) = (não definido) - a ação a ser usada em um clique duplo; O padrão é " open "
        • [ open ]
          • (padrão) = (não definido) - rótulo exibido no menu de contexto; O padrão é " Open "
          • [ command ]
            • (padrão) =" %SystemRoot%\system32\NOTEPAD.EXE %1 "

Para a maioria das extensões, o valor HKCR\.extn\(Default) aponta para uma chave tipo de arquivo sob o mesmo HKCR; por exemplo, .exe aponta para HKCR\exefile .

(Em casos raros, no entanto, todas as informações estão diretamente sob a chave da extensão, com HKCR\.extn\(Default) contendo a descrição. Elas parecem muito raras - talvez uma sobra do Windows 9x ou 3.x ...)

Faça backups. reg save HKLM\Software\Classes hklm-classes.hiv Além disso, lembre-se de que o Prompt de Comando não se importa com as extensões; Se você tentar executar um programa executável, ele sempre será executado, não importa como seja nomeado ou com o qual sua extensão esteja associada.

    
por 07.11.2011 / 15:30
2

Tente isto:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.exe]
@="exefile"
"Content Type"="application/x-msdownload"

[HKEY_CLASSES_ROOT\.exe\PersistentHandler]
@="{098f2470-bae0-11cd-b579-08002b30bfeb}"
    
por 07.11.2011 / 15:43