Localize o caminho do executável padrão para um determinado tipo de arquivo no Windows

0

Suponha que eu esteja executando cmd e eu abro um aplicativo digitando por exemplo start document.pdf

Eu quero obter o caminho exato do executável que abre .pdf files

Claro que eu poderia pesquisar todo o sistema para o executável, mas suponho que seria mais rápido assim porque o caminho já está armazenado em algum lugar

Eu não sei se isso faz diferença, mas estou usando o Windows 7

    
por gsmafra 27.08.2015 / 10:12

2 respostas

1

Infelizmente, os locais exe são geralmente definidos no registro, por exemplo. Eu tenho .txt definido como abertura com o "notepad ++".

Então, para descobrir qual é a associação do arquivo, eu teria que ir para:

"Open Control Panel > Control Panel Home > Default Programs > Set Associations".

De lá, ele mostraria que o Notepad ++ é meu programa padrão.

Eu teria que ir ao registro do Notepad ++, por exemplo:

"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Notepad++"

E veja a localização completa do arquivo, algo como:

C:\Program Files\Notepad++

EDITAR:

Cada programa que você instala normalmente tem um registro associado a ele, onde pode ser configurado. A maioria dos detalhes dos programas pode ser encontrada em:

"HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node" (64 bit)
"HKEY_LOCAL_MACHINE\SOFTWARE\" (32 bit)

Então você precisa usar o regedit.exe nesses locais, encontrar seu programa e ver a localização do exe

    
por 27.08.2015 / 10:41
5

Você pode obter essas informações usando duas ferramentas de linha de comando: assoc e ftype :

help assoc
Displays or modifies file extension associations

help ftype
Displays or modifies file types used in file extension associations

Você pode combiná-los para produzir as informações necessárias:
for /f "delims== tokens=2" %a in ('assoc .pdf') do @ftype %a

Executar isto diretamente da linha de comando deve dar a você o caminho e os parâmetros do programa registrado para .pdf files

    
por 27.08.2015 / 11:11