
VS2012 の古いインストールとアンインストールから、PC に多くのコンポーネント (EXE/DLL、.NET アセンブリ、およびレジストリ エントリ) が残っているのを見つけました。パッケージ キャッシュに残っている MSI ファイルを使用して、それらをすべてきれいに削除したいのですが、 というメッセージが表示されるmsiexec /x product.msi
だけですThis action is only valid for products that are installed
。これは、メインの VS2012 インストーラーがインストーラー データから製品コードを削除し、MSI が製品がインストールされていないと判断したためと思われます。
コマンドライン スイッチを使用してこの検証チェックをバイパスすることは可能ですかmsiexec
? または、MSI をスキャンしてインストールされたものをすべて削除するツールはありますか? 調べてみましたが、msizap
製品のインストーラー データのみが削除され、インストールされたすべてのゴミは削除されません。
TL;DR: 次のことを実行するツールはありますか?
for item in product.msi do delete $item
答え1
アンインストーラーを使用して製品を一度アンインストールしたので、2 回目のアンインストールでもおそらく効果はないでしょう。また、これらの残りのほとんどは、インストール後に製品を使用したときに作成されたものと思われます。
製品を再度インストールしてから、次のようなアンインストーラーを使用することをお勧めします。 Revo アンインストーラー フリーウェア アンインストールして後でクリーンアップします。残念ながら、VS のインストールとアンインストールは高速な操作ではありません。
私の経験から言うと、複数のバージョンの Visual Studio がインストールされている場合、一部のコンポーネントが複数のバージョンに共通である可能性があるため、Revo を使用するとクリーンアップが多すぎる可能性があります。
複数の VS バージョンがある場合の私のアドバイスは、いくつかの残り物が存在することを受け入れ、公式のアンインストーラーのみを使用することです。VS2012 のインストール フォルダーがクリアされていることを安全に確認できますが、他のコンポーネントはそのままにしておきます。