通常Windowsからアプリケーションを削除するときは、コントロールパネルの「プログラムの機能」からアンインストールします。
ですが様々な理由により、その正規の方法でアンインストール出来なくなる事があります。
ここではその消せなくなったアプリを出来る限り目立たなくする事を目指します。完全に消せるわけではないので、どこまでやるかは自分次第。
またアプリによってどの程度システムに食い込むかわかりません。今回の手順はOSの一般的部分への処置方法のみを記しています。
1.準備段階
本当に消えないかあがく
イレギュラー作業前の最終確認。インストールしたフォルダを開き、setup.exeやinst.exeが無いか探します。場合によりそれを実行すればアンインストールが選べる事もあります。
正規の方法で消せるのがベストなのは間違いありません。
バックアップを取る
削除を境に起動時に不明なエラーが出るようになる、という可能性は結構高いと思います。ドライブまるごとのバックアップを取りましょう。
影響範囲を確認する
「ファイル名を指定して実行」(Windowsキー+R)を開き”msconfig”を実行します。
開いたらそれぞれ”サービス”と”スタートアップ”のタグを確認し、今回消したいアプリが登録されていないか確認します。登録されている場合はプログラムのパスもメモしておきます。
どちらにも登録されていない場合は4.へ
追記:マイクロソフトの強制アンインストールソフトを試す
2021/11/14 追記
ふと見つけたのでメモ。
マイクロソフトから強制的にアンインストールを実施するFixツールが公開されています。
バックアップをとってからこれを試してみるのも手。
アプリのインストール済みリストに出てきている状態なら、アプリ自身のアンインストーラに頼る事なくアンインストールを試行できます。
Fix problems that block programs from being installed or removed
2.スタートアップより削除する
msconfigのスタートアップタブに登録されていた場合、まずチェックを外して一度適用します。
次にレジストリにて削除します。Regeditを実行して下記アドレスを開きます。
\\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\MSConfig\startupreg
ここに先ほどチェックを外した=無効化した項目が出ているので、右クリックメニューから削除。
3.サービスより削除する
2.と同様にmsconfigのサービスタブに登録されていた場合、チェックを外して一度適用します。
管理から”サービス”を開きます。又は”ファイル名を指定して実行”にてservices.mscと入力。先ほどチェックを外したサービスを選び、プロパティを開きます。
プロパティに表示されるサービス名(表示名ではありません)をメモ、又はメモ帳にコピペしておきます。
コマンドプロンプトを管理者権限で開き、消したいサービスに対して一つづつコマンドを実行します
sc delete サービス名
[SC] DeleteService SUCCESSと表示されれば成功。
これでサービスから削除されました。
4.プログラムと機能の一覧から削除
いよいよ本題。インストール一覧から削除します。
MSのサイトを参考にしました。Regeditを実行して
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
を開く。必要時はエクスポートしてバックアップしておきます。
各アプリごとに一つのフォルダ表示(構造)になっているため、一つづつ開いていってDisplayNameが消す対象のアプリになっているフォルダを見つけます。見つけたら間違いないことを再確認して右クリックメニューから削除。
全てのアプリを消したらレジストリエディタを閉じ、コンパネの”プログラムと機能”を開いて目的のアプリが消えている事を確認します。
5.ファイル、レジストリの削除
後始末です。
- 冒頭にてメモしたプログラム本体の場所ををエクスプローラにて削除します。
- %USERPROFILE%\AppDataを開いてLocal,LocalLow,Roamingのそれぞれのフォルダに今回消したアプリの残骸が残っていないか確認します。
- レジストリエディタを起動し、アプリの名前、制作ベンダーなどの名前で検索し、不要と思われるキーを削除します。
以上で作業は一通り終了です。
拡張子連携を変更してしまうアプリはまた別の削除が必要となりますが、ツールレベルのアプリならわからなくなる位には消せるでしょう。