C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: C# MSI インストーラクラスのDisplayIcon


(過去ログ 21 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■9071 / inTopicNo.1)  C# MSI インストーラクラスのDisplayIcon
  
□投稿者/ asuka (32回)-(2007/10/18(Thu) 11:12:20)

分類:[C#] 

お世話になっております。

VS2005でMSIにてインストーラを作成しております。

作成したプログラム(DLL)がGACなどの登録が必要なため、

System.Configuration.Installのインストーラクラスを継承し、Install関数などをオーバーラップして実装しています。



無事インストールも出来、動作に問題はないのですが、

コントローラパネルの[プログラムの追加と削除]に表示される自分のプログラムアイコンがMSIのシステムアイコンで表示されてしまいます。




調べてみますと、上記アイコンは下記ディレクトリの値に従うそうなのです。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{GUID}
DisplayIcon =



インストーラはインストール時に自動でGUIDを生成して書き込むようで、MSIのインストーラはデフォルトではDisplayIconキーを記入しないようなのです。

そこで、InstallAfter関数内で、インストール後に自分でキーを追加し、アイコンまでのフルパスを書きに行こうかと考えたのですが、

インストーラが自動で生成するGUIDが分からずに困っております。



インストーラクラス内で、DisplayIconにパスを渡せればと思うのですが、調べた限りでは分かりませんでした。

DisplayIconにパスを渡す方法、あるいはGUIDを知る方法を御存知であれば、是非御教授願います。

引用返信 編集キー/
■9072 / inTopicNo.2)  Re[1]: C# MSI インストーラクラスのDisplayIcon
□投稿者/ IIJIMAS (53回)-(2007/10/18(Thu) 11:31:56)
No9071 (asuka さん) に返信
> VS2005でMSIにてインストーラを作成しております。

> コントローラパネルの[プログラムの追加と削除]に表示される自分のプログラムアイコンがMSIのシステムアイコンで表示されてしまいます。

VS2005セットアッププロジェクトをソリューションエクスプローラで選択した時の
プロパティウィンドウの
AddRemoveProgramsIcon
での指定ではだめなのでしょうか。。。
引用返信 編集キー/
■9077 / inTopicNo.3)  Re[2]: C# MSI インストーラクラスのDisplayIcon
□投稿者/ asuka (33回)-(2007/10/18(Thu) 13:00:56)
IIJIMASさん

いつもレスありがとうございます。

> VS2005セットアッププロジェクトをソリューションエクスプローラで選択した時の
> プロパティウィンドウの
> AddRemoveProgramsIcon
> での指定ではだめなのでしょうか。。。

これでいけました!

プロジェクトから右クリックのプロパティは覗いていたのですが、タブのプロパティにあるとは・・・

ありがとうございます、すっきりしました。^^

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -