プログラムを削除したいのですが開くリスト (カスタム プログラムを新しいバージョンに置き換える必要がありますが、ファイルの場所がわかりません.exe
)。
コンピュータ上でこのプログラムの場所を見つけるにはどうすればよいですか?
何らかの理由で、すべてのファイルを検索しても、アプリケーション名では見つかりません.exe
。プログラムにはインストーラーがなく、.exe
必要な場所に置くだけです。
答え1
「開く...」リストは、レジストリ内の 2 つの別々のキーに保存されます。1 つのキーには、特定のファイル拡張子に使用するアプリケーションのリストが保存され、もう 1 つのキーには、特定のアプリケーションの場所が保存されます。
これらを調べることもできますregedit.exe
(誤ってレジストリを変更する可能性があるためお勧めしません)。または、コマンド ラインからクエリすることもできます。
> 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"
私はほとんどの作業を実行するために非常に短いバッチ ファイルを作成しました。
@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
)
)