私はいくつかのクラスライブラリと実行可能なプロジェクト(Windowsサービス)を含むVS2008ソリューションを持っています。私のクラスライブラリの1つはサードパーティのコンポーネントのラッパーです。大量の設定が可能ですので、3rdPartyConfig.xml
というカスタムXMLドキュメントと、3rdPartConfig.cs
という強く型付けされた解析クラスを作成しました。リリース時にクラスライブラリのカスタム設定ファイルを実行可能プロジェクトに自動的に含めるにはどうすればよいですか?
私の実行可能プロジェクトはそのクラスライブラリを参照しているので、アプリケーションの実行時に実行中のXMLファイルが検索されます。これを行うために、3rdPartyConfig.xml
に次のプロパティを設定しました:
- セット
Build Action = Content
- 私はデバッグ構成で実行すると、私は
3rdPartyConfig.xml
は、ビルド出力フォルダにコピーされている見ることができますCopy to output Directory = Copy always
を設定します。アプリは正常に動作し、ファイルを読み取ることができます。しかし、リリースとして公開すると、Visual Studio はにはXMLファイルがコピーされないため、アプリケーションが実行されても見つからない場合があります。
カスタムビルドファイルがリリースビルドの出力に含まれていることを確認するにはどうすればよいですか?ビルド前またはビルド後のスクリプトを記述する必要はありますか?
警告:
- 私は回避策は、XMLファイルをスクラップとはapp.configに設定を追加するであろうことを知っています。私はではなく、という方法で(クライアントは設定ファイルを簡単に置き換えることができるようにしたい)という質問をしました。
- もう1つの回避策は、構成情報をデータベースに格納することです。クライアントはそれをやっていない方がいいでしょう。
- 私は、「実行場所」がWindowsサービスを扱うときに不明瞭になるという事実を調整しました。安心して私のコード
c:\windows\system32
のインストールされた場所でチェックします。
ありがとう!
仕事ができることができますが、これが達成されるだろうか単なる詳細に説明することができますか? – Aaronster