Release 4.0 BizTalk Deployment - WiX

Topics: General Questions
Oct 9, 2008 at 4:32 PM
Hi,

Having the following problems when attempting to create an msi from the new release

     [exec] Microsoft (R) Windows Installer Xml Linker version 3.0.4214.0
     [exec] Copyright (C) Microsoft Corporation. All rights reserved.
     [exec] E:\Projects\Veolia\Integration\Invoicing\Common\DEV\MAIN\Src\Veolia
Integration.Invoicing.Common\Veolia.Integration.Invoicing.Common.WiXSetup\Setup
Contents.wxi(226) : error LGHT0130 : The primary key '_CD35C15A748F1133D8F3A716
27EF287' is duplicated in table 'RemoveFile'.  Please remove one of the entries
or rename a part of the primary key to avoid the collision.

BUILD FAILED

The sample app builds/deploys/and creates the msi correctly but when I try and create an msi on my solution I get the above error. I can get it to deploy to BizTalk from VS so my NAnt script files are correct.

What I have found is that if I delete all of the settings xml files e.g. local_settings.xml from my .\EnvironmentSettings folder it works, theses files are now created by running a deployment from VS, correct me if I am wrong but theses files used to be created via excel and CTRL-w.

Can't see what I am doing wrong, can you help

Cheers
Jim McLay

Coordinator
Oct 9, 2008 at 7:20 PM

Hi Jim,

The file contents.wxi is generated at runtime during creation of the MSI.  You will find that key in contents.wxi somewhere (twice, in your case) associated with filenames.

With what you mentioned about the settings files, maybe you are copying the environment-specific settings files into your MSI unnecessarily.  In your <project>.WiXSetup.build, you should copy from the EnvironmentSettings folder only SettingsFileGenerator.xml, as follows:

      <mkdir dir="${redist.dir}\EnvironmentSettings" />
      <copy todir="${redist.dir}\EnvironmentSettings">
         <fileset basedir="EnvironmentSettings">
            <include name="SettingsFileGenerator.xml" />
         </fileset>
      </copy>

You are correct that the local_settings.xml, etc. used to be created manually by Ctrl-W.  That is all automated now.

Please let us know if that helps.

Thanks,
Tom

 

Oct 13, 2008 at 1:24 PM
Hi Tom,

Sorry for the delay in responding.

Thanks for the info, I was including 

<fileset basedir="EnvironmentSettings">
    <include name="*.xml" />
    <include name="*.xls" />
</fileset>

don't ask me why, but I had copied <project>.WixSetup.Build from another solution, anyway all sorted now many thanks.

Cheers
Jim McLay