Win32_Class と C# を ManagementBaseObject と組み合わせて使用して、Windows サービスのインストールに使用された MSI を特定する方法はありますか? または他の手段(できればC#を使用)?
現在のすべてのサービスを反復処理し、このサービスをインストールしたのは誰か (エンティティ...MSI データベース?) を尋ねる必要があります。
Win32_Service WMI クラスで ManagementObjectSearcher クエリを使用して実行できるすべてのサービスを反復処理していますが、サービスの配信に使用された MSI (存在する場合) に結び付ける方法がわかりません。すべてのサービスが MSI を使用してインストールされているわけではありませんが、インストールされているサービスについては、作成するレポート用に文書化したいと思います。
これを行う方法についてのアイデアはありますか?