- - PR -
インストール済みアプリの取得方法
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2007-03-18 03:33
インストール済みアプリの取得方法について、お訊ねします。
"コントロールパネル" - "プログラムの追加と削除"で取得されている アプリケーションの一覧ですが、これをC#で実現したいと 考えています。 実行ファイルからアイコンを取得する方法はわかるのですが、 その逆はどのようにすればよいのでしょうか? よろしくお願いします。 ----------------------------------------- VisualStudio 2005 Pro/WinXP SP2 | ||||||||
|
投稿日時: 2007-03-18 12:23
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
上記配下の subkey で、DisplayName が存在し、SystemComponent が 1 でないもの。 | ||||||||
|
投稿日時: 2007-03-18 13:44
WMI か Windows Installer APIs を使えば、インストール済みのアプリケーションを列挙したり、インストール済みアプリケーションの情報を取得することが出来ます。
質問の意味が分かりません。 実行ファイルは一意に定まると思いますが、「とあるアイコン」が設定されている実行ファイルはいくつも存在している可能性があります。 具体的に、どういったことがしたいのでしょうか? [ メッセージ編集済み 編集者: 渋木宏明(ひどり) 編集日時 2007-03-18 13:48 ] | ||||||||
|
投稿日時: 2007-03-18 13:48
これだと、Windows Installer で install されたものだけ取得されると思います。 Install Shield とかで install されたものも取得する場合は、registry からじゃないとむりだったような気が。。。 | ||||||||
|
投稿日時: 2007-03-19 21:44
全部を引っ張るなら、レジストリかな。WMIは未調査なので分らんです。 で、一部ですが、HKLM ではなく、HKCU の同じキーにインストール情報を書くアプリもあります。 本題のアイコンですが、DisplayIcon が有るものについては、それでアイコン情報が取れます。 エントリーがない場合でも WindowsInstaller な製品の場合(WindowsInstaller=1のエントリーがある)は別途API経由でアイコンを引っ張ることができる場合「も」あります。 #こちらはアイコン情報がほかの場所に格納されていることがあるため _________________ // とっちゃん(高萩 俊行)@わんくま同盟 // とっちゃん’Blog // MS-MVP for Developer Tools - Visual C++ // WindowsInstallerの話題はhttp://www.freeml.com/msiまで |
1