Como encontrar a localização do programa na lista "Abrir com"?

Como encontrar a localização do programa na lista "Abrir com"?

Preciso remover um programa noAbrir comlist (preciso substituir um programa personalizado por uma versão mais recente e não lembro onde .exeestá o arquivo).

Como eu poderia encontrar a localização deste programa no meu computador?

Por algum motivo, não consigo encontrá-lo com o nome do aplicativo, mesmo ao pesquisar todos .exeos arquivos. Não há instalador para o programa, é só .exevocê colocar onde quiser.

Responder1

A lista "Abrir com…" é armazenada no registro em duas chaves separadas. Uma chave armazena a lista de aplicativos a serem usados ​​para uma extensão de arquivo específica e a outra armazena a localização de um aplicativo específico.

Você pode procurá-los regedit.exe(o que não sugiro, pois você pode acidentalmente fazer uma alteração no registro) ou consultá-los na linha de comando:

> reg query HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.php\OpenWithList

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.php\OpenWithList
    a    REG_SZ    Dreamweaver.exe
    MRUList    REG_SZ    ba
    b    REG_SZ    notepad++.exe


> reg query HKEY_CLASSES_ROOT\Applications\notepad++.exe\shell\open\command /ve

HKEY_CLASSES_ROOT\Applications\notepad++.exe\shell\open\command
    (Default)    REG_SZ    "C:\Program Files\Notepad++\notepad++.exe" "%1"

Eu escrevi um arquivo em lote muito curto para fazer a maior parte do trabalho braçal:

@echo off
SET _Ext=%~1
IF "%_Ext%"=="" SET /P _Ext=Enter file extension to query: 
for /f "tokens=2*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\%_Ext%\OpenWithList" ^| FIND /v "MRUList"') do (
    echo|set /p=%%b: 
    for /f "tokens=2*" %%g in ('reg query "HKEY_CLASSES_ROOT\Applications\%%b\shell\open\command" /ve ^| FIND /v "MRUList"') do (
        echo %%h
    )
)

informação relacionada