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

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

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

Re[3]: セットアッププロジェクトの設定について


(過去ログ 105 を表示中)

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

■62901 / inTopicNo.1)  セットアッププロジェクトの設定について
  
□投稿者/ 緑川 (1回)-(2011/11/09(Wed) 13:12:43)

分類:[.NET 全般] 

こんにちは。
Visual Studio (2008)のセットアッププロジェクトで自作ソフトのインストーラーを作成し、以下の事を行いたいと思います。

・インストールターゲットフォルダの直下にバージョン番号のフォルダを作成し、ここに参照用データを置く。
・レジストリのHKEY_LOCAL_MACHINE\SOFTWARE\ソフト名\バージョン番号というキーに参照用の値を設定する。

とりあえず、それぞれのフォルダ名・レジストリキーをセットアッププロジェクト内で設定し、インストーラーを
作成する事ができましたが、このバージョン番号を一か所で設定して、一括で上記フォルダ・レジストリキーの名称を
設定することは可能でしょうか?
それとも、それぞれ手入力で修正しなければならないでしょうか?

Orcaを使ったことがあったので、アプリケーションフォルダ内のバージョン番号のフォルダ名を[test]としたものをビルドし、
さくせいしたmsiファイルをOrcaで開き、Propertyテーブルに、Propertyを"test"、Valueを"1.01"という行を追加してみましたが、
これでインストールしてみると、インストールターゲットフォルダの"[test]"という名前のフォルダが出来てしまいました。
(本当は"1.01"という名前のフォルダが作成されることを期待していました。)

何か良い方法はないでしょうか?
引用返信 編集キー/
■62902 / inTopicNo.2)  Re[1]: セットアッププロジェクトの設定について
□投稿者/ とっちゃん (612回)-(2011/11/09(Wed) 14:37:57)
とっちゃん さんの Web サイト
No62901 (緑川 さん) に返信
> こんにちは。
> Visual Studio (2008)のセットアッププロジェクトで自作ソフトのインストーラーを作成し、以下の事を行いたいと思います。
>
> ・インストールターゲットフォルダの直下にバージョン番号のフォルダを作成し、ここに参照用データを置く。
> ・レジストリのHKEY_LOCAL_MACHINE\SOFTWARE\ソフト名\バージョン番号というキーに参照用の値を設定する。
>
> とりあえず、それぞれのフォルダ名・レジストリキーをセットアッププロジェクト内で設定し、インストーラーを
> 作成する事ができましたが、このバージョン番号を一か所で設定して、一括で上記フォルダ・レジストリキーの名称を
> 設定することは可能でしょうか?
> それとも、それぞれ手入力で修正しなければならないでしょうか?

レジストリは、キー名の一部にプロパティを利用することができますが、ディレクトリ名は一部に
プロパティを利用することができません。

ですので、あらかじめ固定で名前を入れておくか、ディレクトリ名を設定するカスタムアクション(カスタム動作とは異なります)を
利用して、設定するかのどちらかとなります。

が、前者については、GUIのエディタしかありませんので、変更のたびに手動で変更しなければなりませんし
後者は、インストール先のサブフォルダであることを維持して設定する方法がないため、対応できません。

結果「現在とっている手法以外の対処手段は存在しない。」となります。

WiXならば、この手のことをプリプロセッサを利用して実現できるため(C/C++ の #define と同じ存在がある)
これを利用して設定することができます。

VSセットアッププロジェクトは現行最新のVS2010で提供終了が明言されていますので、これを機に乗り換えを検討してもいいかもしれません。

引用返信 編集キー/
■62903 / inTopicNo.3)  Re[2]: セットアッププロジェクトの設定について
□投稿者/ 緑川 (2回)-(2011/11/09(Wed) 14:59:42)
とっちゃん様、ご説明ありがとうございました。
そうですか。今の方法以外対応方法はなさそうですね。
これについてはあきらめることにします。
引用返信 編集キー/
■62904 / inTopicNo.4)  Re[3]: セットアッププロジェクトの設定について
□投稿者/ 緑川 (3回)-(2011/11/09(Wed) 15:00:32)
解決済みとします。
解決済み
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -