6

Wise Installer から WIX に移行し、util:xmlfile を使用して構成 xml ファイルを更新しています。

これは機能します。

<Component Id="config" Guid="*">
  <File Id="config" Source="..\Source\Desktop\prodconfig.xml" KeyPath="yes" Vital="yes" />
    <util:XmlFile 
      Id="_PORT_" File="[INSTALLDIR]prodconfig.xml"  
      Action="setValue" 
      Name="Port" Value="[PORT]" 
      ElementPath="//Configuration/CommConnectionPools/CommConnectionPool" 
      Sequence='1' />
  </File>
</Component>

これは動作しません。

<Component Id="config" Guid="*">
  <File Id="config" Source="..\Source\Desktop\prod-config.xml" KeyPath="yes" Vital="yes" />
    <util:XmlFile 
      Id="_PORT_" File="[INSTALLDIR]prod-config.xml"  
      Action="setValue" 
      Name="Port" Value="[PORT]" 
      ElementPath="//Configuration/CommConnectionPools/CommConnectionPool" 
      Sequence='1' />
  </File>
</Component>

.msi が最初のコンポーネントで実行されると、すべて問題ありません。2 番目のバージョンでは、「エラー 25531。XML ファイルを開くことができませんでした...」というエラーが返されます。

私が知る限り、唯一の違いはファイル名のハイフンです。

違いが何であるかについての提案はありますか?

4

2 に答える 2

9

名前をハードコーディングする代わりに、コンポーネントの ID を使用してみてください

[#config] //which will refer to the File Id

それ以外の

[INSTALLDIR]prod-config.xml
于 2014-02-16T01:40:19.993 に答える