none
Vistaのインストールされている更新プログラムの参照先について RRS feed

  • 質問

  • Windows2003までのWindowsの更新プログラム(KBXXX)は、「コントロールパネル」→「プログラムの追加と削除(アプリケーションの追加と削除)」に表示されていましたが、Vistaから「コントロールパネル」→「プログラムと機能」→「インストールされている更新プログラム」に表示されるようになったようです。

    Windows2003までは、プログラムの追加と削除に表示される情報をレジストリの「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall」以下から取得できていましたが、Vistaでは、Windowsの更新プログラム情報はこのレジストリ以下には存在しないため取得できません。

    インストールされている更新プログラム」に表示される情報はどこから採取すればよいのでしょうか?

    2007年3月7日 3:11

すべての返信

  • 今まで通り、レジストリ自体は存在してますよね?
    更新プログラムだけが、入っていないという意味でしょうか?

    もし、入っていないのだとすると、Windows Installer のAPIを、
    直接、呼び出す必要があるんでしょう。
    MsiEnumPaches あたりを検索してみるといいでしょう。
    2007年3月7日 5:49
  • Vista手元にないので確認していませんが、WMIのWin32_QuickFixEngineeringというクラスを使えばとってこれます。

    たとえばPowershellだとこんな感じでつらつらと出力されました(MSDNのWin32_QuickFixEngineering)。

    PS > Get-WmiObject -class Win32_QuickFixEngineering -namespace root/cimv2 -computername . | format-table hotfixid,description

    Q147222
    M886903                                                     Microsoft .NET Framework 1.1 Hotfix (KB886903)
    S867460                                                     Microsoft .NET Framework 1.1 Service Pack 1 (KB867460)
    KB917283                                                    This Security Update is for Microsoft .NET Framework 2.0...
    KB922770                                                    This Security Update is for Microsoft .NET Framework 2.0...
    KB926602                                                    この Service Pack は Microsoft Visual Studio 2005 Team S...
    Q827429                                                     FIX: ASP stops responding when calling Response.Redirect...
    Q927978                                                     FIX: ASP stops responding when calling Response.Redirect...

     

    2007年3月7日 10:14
  • >今まで通り、レジストリ自体は存在してますよね?
    >更新プログラムだけが、入っていないという意味でしょうか?

    はい。従来アプリケーションのインストール情報が保存されているレジストリ以下に更新プログラムが、入っていませんでした。

    >MsiEnumPaches あたりを検索してみるといいでしょう。

    ありがとうございます。確認してみます。

    2007年3月8日 1:29
  • 上記方法で取得できることが確認できました。ありがとうございました。

    2007年3月8日 1:31