Does the new file have a newer file version? Patch is really just "apply transfor then repair product".
On Fri, Feb 25, 2011 at 7:06 AM, John Daintree <jo...@dyalog.com> wrote: > Hello all, > > > > I'm working with Liam who previously asked some patch related questions. ( > > http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Patching-Using > -Purely-Wix-td6031594.html<http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Patching-Using-Purely-Wix-td6031594.html>) > > > > We've made progress, with the comments to Liam's post, and by looking at > > http://blogs.msdn.com/b/pmarcu/archive/2008/05/30/patching-something-you-did > nt-build-with-wix-using-wix-.aspx<http://blogs.msdn.com/b/pmarcu/archive/2008/05/30/patching-something-you-didnt-build-with-wix-using-wix-.aspx> > . > > > > However we're still unable to successfully patch our installation. > > > > We have two install packages: setup_32_unicode_new.msi and > setup_32_unicode_old.msi, there is only 1 file (dyalog.exe, which I've > changed from 6Mb to 15Mb) that is changed from old to new. Initially we're > just trying to create a patch that will install that one modified file. > > > > Here's my patch xml: > > > > <?xml version="1.0" encoding="UTF-8"?> > > <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> > > <!-- Path variables --> > > <Patch > > AllowRemoval = "yes" > > Manufacturer = "Dyalog" > > DisplayName = "Dyalog APL 13.0 Patch" > > Description = "Dyalog APL 13.0 Patch" > > Classification = "Update" > > > > > > > <Media Id="5000" Cabinet="RTM.cab"> > > <PatchBaseline Id="RTM"/> > > </Media> > > > > <PatchFamilyRef Id="Interpreter"/> > > </Patch> > > > > <Fragment> > > <PatchFamily > > Id="Interpreter" > > Supersede="yes" > > Version="1.0.1.0"> > > <ComponentRef Id="dyalog.exe"/> > > </PatchFamily> > > </Fragment> > > </Wix> > > > > I use the following script to make the patch file: > > > > WIXDIR=c:/wix35/bin > > $WIXDIR/candle Patch.wxs > $WIXDIR/light Patch.wixobj -out Patch/Patch.WixMsp > > msiexec -passive -norestart -l* inst_old.log > TARGETDIR="c:\\tmp\\wix_patching\\dyalog\\inst_old" -a > setup_32_unicode_old.msi > msiexec -passive -norestart -l* inst_new.log > TARGETDIR="c:\\tmp\\wix_patching\\dyalog\\inst_new" -a > setup_32_unicode_new.msi > > $WIXDIR/torch -v -p -xo -a inst_old/setup_32_unicode_old.msi > inst_new/setup_32_unicode_new.msi -out patch/diffs.wixmst > $WIXDIR/pyro -v Patch/Patch.WixMsp -out Patch/Patch.msp -t RTM > Patch/Diffs.wixmst > > > > I've used msix ( > http://blogs.msdn.com/b/heaths/archive/2006/04/07/571138.aspx ) to extract > the CAB from the MSP file and I can see that the only file in it is the > modified binary that I expect to see. > > > > On a clean XP VM I install setup_32_unicode_old.msi, and then I apply the > patch. However dyalog.exe remains the old version. > > If, however, I install setup_32_unicode_old.msi, then delete dyalog.exe, > and > then apply the patch I do get the new version. > > I've looked at the logs for the two applications of the patch, and the only > significant difference seems to be the installation of the file, which > isn't > present unless I delete the file first: > > > > (without deleting dyalog.exe first) > > Action 14:28:51: InstallFiles. Copying new files > > Action 14:28:51: WriteRegistryValues. Writing system registry values > > > > (with deleting dyalog.exe first) > > Action 14:37:36: InstallFiles. Copying new files > > InstallFiles: File: dyalog.exe, Directory: C:\Program Files\Dyalog\Dyalog > APL 13.0 Unicode\, Size: 15731712 > > Action 14:37:37: WriteRegistryValues. Writing system registry values > > > > What could we be doing wrong that prevents the installation of the new file > if the old one exists? > > > > Many Thanks, > > John > > > > > > > > > > > ------------------------------------------------------------------------------ > Free Software Download: Index, Search & Analyze Logs and other IT data in > Real-Time with Splunk. Collect, index and harness all the fast moving IT > data > generated by your applications, servers and devices whether physical, > virtual > or in the cloud. Deliver compliance at lower cost and gain new business > insights. http://p.sf.net/sfu/splunk-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > -- virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ Free Software Download: Index, Search & Analyze Logs and other IT data in Real-Time with Splunk. Collect, index and harness all the fast moving IT data generated by your applications, servers and devices whether physical, virtual or in the cloud. Deliver compliance at lower cost and gain new business insights. http://p.sf.net/sfu/splunk-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users