私は、イントラネットWebサービスURLなどのさまざまな便利な設定を保存するためにuser.configに依存する.NET WinFormsアプリケーションを開発しています。インストールの一環としてカスタム初期設定をインポートできるようにしたいと考えています。このためのユースケースは、企業がソフトウェアをインストールするマシンが100台あり、問題のイントラネットWebサービスへの参照をすべて持っている必要がある場合です。これは、すべてのマシンで手動で設定する必要はありません。インストール時にuser.configまたはapp.exe.configを初期化する
現在、VS2008セットアッププロジェクトを使用してインストールパッケージを生成しています。
これまでのアイデアは、(テンプレートからの)情報でカスタム初期.configファイルを作成し、セットアッププロジェクトがインストールするデフォルトのものではなく、その場所に配置することができました。
しかし、私はこれらのいくつかよりも、この他を行う方法を参照することはできません。
- ためには、(System.Configuration.Install.Installer由来)カスタムインストーラのアクションに実行可能ファイル名をハードコーディングConfigurationManagerクラスを使用して.configファイルパスを特定するこれは、実行ファイル名が変更された場合、インストーラを手動で変更する必要があります。
- 設定を保存するために、独自の設定クラスまたはファイル/フォルダ階層をロールします。これは基本的に、私が正しく理解していれば、.NETが提供する分離機構(ここでは障害物です)の利点から私たちを奪います。
誰にも分かることはありますか?上記の2つの方法を選択する方法はありますか?
私は答えができる、「これをしない、それはあなた自身の設定のインポートメカニズムをロール、メカニズムの精神に反する」恐れます。
.netは "重大な"インストーラが無駄に見えるxcopyです。私たちは約2日間で独自のXMLスクリプトインストーラを作成しました。必要なものすべてを実行するだけでなく、簡単に拡張することができます。 – Bill
インストーラを書くのに2日間かかりますか? ;-) – blak3r