0

カスタム アクションで、ConfigurationManager.OpenExeConfiguration(exePath) を介して .exe.config ファイルをロードしています {このパスはファイルに対して正しい}

私はこれを実行しています After="InstallFiles" そして、config.Save(); を呼び出そうとする時点まで、インストールですべてが機能します。次に、以下のエラーが返され、すべてロールバックします。

構成ファイルの読み込み中にエラーが発生しました: パス 'C:\Program Files (x86)...\rdayspic.tmp' へのアクセスが拒否されました。(.exe.config)。

何らかの形で .tmp バージョンではなく実際のファイルにアクセスする必要がありますか、または構成にアクセス/変更するための他のパタ​​ーンに従う必要がありますか?

基本的にファイル全体を文字列としてプルし、検索と置換を介して変更を行う必要があるかもしれないどこかで読みましたが、それは私にはあまりにもぎこちないようです...

4

1 に答える 1

0

製品のインストール中に XML ファイル (アプリケーション構成) を更新しようとしているようです。その場合は、XmlConfig要素を確認する必要があります。

カスタム アクションと比較して、多くの利点があります。

  • これは WiX ツールセットの一部であるため、徹底的にテストされています
  • その唯一の目的は、XML を変更することです。
  • それは数行の WiX コードの問題です

したがって、車輪を発明せず、可能な限り標準的なソリューションを維持してください。

于 2013-07-25T07:00:44.030 に答える