cにインストールされているすべてのアプリケーションを一覧表示したい。2 つの方法でそれを行うことができます。1. アンインストール レジストリと 2. WMI および Win32_product クラスの使用。
しかし、インストールされた製品を列挙するためにレジストリを使用することは信頼できますか? また、WMI は MSI インストーラーを介してインストールされた製品のみを一覧表示しますか? それを行う別の方法はありますか?そうでない場合、どの方法が最善で推奨されますか?
あなたの直感は正しいです。レジストリを反復することは、どのプログラムが「インストールされている」かを見つけるための最も完全な方法です。明らかに、Windows レジストリに登録されていないスタンドアロンのバイナリ/アプリケーションは検出されません。
プログラムの追加/削除リストとは異なる WMI の「インストール済み」クエリを参照してください。
Rob Haupt's Answerは、レジストリを検査するためのコードへのリンクです