[I posted this on microsoft.public.platformsdk.msi last week, but didn't get any bites. Maybe wix-users will have some advice.]

I'd like to get some advice from the MSI gurus. I'm using WiX, but my question is really about the best way to [ab]use the MSI engine.

I'm trying to migrate an installer from a script-based system to MSI. I've got to deal with binaries that I don't control, and that don't follow MSI's versioning rules. In particular, the EXE/DLL versions don't include a build number, just a major/minor version, which only increments once per public release. I get a new set of files every week, and need to produce an MSI for internal testing. I need this week's MSI to upgrade last week's MSI. I can't require a manual uninstall of the prior build.

I came up with a solution, but I'm not sure it's the right one. I generate a new product code on every build (so every build looks like a major upgrade). I detect when I'm doing a week-to-week upgrade and sequence the RemoveExistingProducts action for that case, as well as an upgrade from a prior version. This seems to work, but it generates a warning during validation in Orca.

 <Product Id="????????-????-????-????-????????????"
   UpgradeCode="..." Name="..."  Manufacturer="..."
   Version="1.5.0.0"  Language="1033">

   <Upgrade Id="...'>
     ...
     <UpgradeVersion Property="SAMEVERSION"
       IncludeMinimum="yes" IncludeMaximum="yes"
       Minimum="1.5.0.0" Maximum="1.5.0.0" />
     <Property Id="SAMEVERSION" Secure="yes" />
   </Upgrade>

   <InstallExecuteSequence>
     ...
     <RemoveExistingProducts After="InstallValidate">
       PREVIOUSVERSION OR SAMEVERSION
     </RemoveExistingProducts>
   </InstallExecuteSequence>

I also tried setting the REINSTALLMODE property, to force files with the same version to be reinstalled, but validation complains about this too.

   <Property Id='REINSTALLMODE' Value='emus' />

So, what do you think? Am I doing this the best way? Any other suggestions?

_________________________________________________________________
All-in-one security and maintenance for your PC.  Get a free 90-day trial! http://clk.atdmt.com/MSN/go/msnnkwlo0050000001msn/direct/01/?href=http://www.windowsonecare.com/?sc_cid=msn_hotmail


-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to