Thanks. I'm now using the following Patch.wixproj postbuild events to automate the generation of msp output using either new wix3 way or old msimsp way.
<!-- new wix3 way for patch generation --> <Patch AllowRemoval="yes" Description="!(loc.ProductName)" Manufacturer="!(loc.ProductName)" MoreInfoURL="!(loc.ProductUrl)" Classification="Update" DisplayName="!(loc.ProductName)"> <Media Id="5000" Cabinet="Rtm.cab"> <PatchBaseline Id="Rtm" /> </Media> <PatchFamilyRef Id="v11ReleasePatchFamily"/> </Patch> <Fragment> <PatchFamily Id="v11ReleasePatchFamily" Version="1.0.0.0" Supersede="yes"> <ComponentRef Id="Service1" /> </PatchFamily> </Fragment> Patch.wixproj | postBuild event move /y "$(TargetDir)en-us\$(TargetName).msi" "$(ProjectDir)obj\$(Configuration)\$(TargetName).wixmsp" robocopy "\\rpbuildagent03\builds\RXP Eventing\v1.0adminInstallAlt" "$(ProjectDir)obj\$(Configuration)\v1.0adminInstallAlt" /mir /r:0 if not exist "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" md "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" rem msiexec.exe /a "$(Setup.TargetDir)en-us\$(Setup.TargetFileName)" /qn TARGETDIR="$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" /l* "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.log" if "$(IsDesktopBuild)" == "" msiexec.exe /a "$(SolutionDir)Setup\Setup\bin\$(Configuration)\en-us\RP Event Notification Service.msi" /qn TARGETDIR="$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" /l* "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.log" if "$(IsDesktopBuild)" == "false" msiexec.exe /a "$(OutDir)en-us\RP Event Notification Service.msi" /qn TARGETDIR="$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" /l* "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.log" "$(MSBuildExtensionsPath)\..\Windows Installer XML v3\bin\torch.exe" -p -ax "$(ProjectDir)obj\$(Configuration)\extractedAdminInstallBinaries" "$(ProjectDir)obj\$(Configuration)\v1.0adminInstall\RP Event Notification Service.msi" "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.msi" -out "$(ProjectDir)obj\$(Configuration)\$(TargetName).wixmst" "$(MSBuildExtensionsPath)\..\Windows Installer XML v3\bin\pyro.exe "$(ProjectDir)obj\$(Configuration)\$(TargetName).wixmsp" -out "$(TargetDir)en-us\$(TargetName).msp" -t Rtm "$(ProjectDir)obj\$(Configuration)\$(TargetName).wixmst" cmd /c echo end processing patch post-build event command lines <!-- old msimsp way for patch generation --> <PatchCreation Id="C86050B6-37EC-4BE8-A9D0-A9C61DA42ED6" CleanWorkingFolder="yes" OutputPath="!(loc.ProductName).pcp" WholeFilesOnly="yes"> <PatchInformation Description="!(loc.ProductName)" Comments="!(loc.ProductName)" ShortNames="no" Languages="1033" Compressed="yes" Manufacturer="!(loc.ProductManufacturer)" /> <PatchMetadata AllowRemoval="yes" Description="!(loc.ProductName)" ManufacturerName="!(loc.ProductManufacturer)" TargetProductName="!(loc.ProductName)" MoreInfoURL="!(loc.ProductUrl)" Classification="Update" DisplayName="!(loc.ProductName)" /> <Family DiskId="5000" MediaSrcProp="v11Patch" Name="v11Patch" SequenceStart="5000"> <UpgradeImage Id="v11Upgrade" SourceFile="$(var.ProjectDir)obj\$(var.Configuration)\v1.1adminInstall\RP Event Notification Service.msi"> <TargetImage Id="v10Target" IgnoreMissingFiles="no" Order="2" SourceFile="$(var.ProjectDir)obj\$(var.Configuration)\v1.0adminInstall\RP Event Notification Service.msi" /> </UpgradeImage> </Family> <PatchSequence PatchFamily="EventingV11PatchFamily" Sequence="1.0.0.0" Supersede="yes" /> </PatchCreation> Patch.wixproj | postBuild event move /y "$(TargetDir)en-us\$(TargetName).msi" "$(ProjectDir)obj\$(Configuration)\$(TargetName).pcp" robocopy "\\rpbuildagent03\builds\RXP Eventing\v1.0adminInstall" "$(ProjectDir)obj\$(Configuration)\v1.0adminInstall" /mir /r:0 if not exist "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" md "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" rem msiexec.exe /a "$(Setup.TargetDir)en-us\$(Setup.TargetFileName)" /qn TARGETDIR="$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" /l* "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.log" if "$(IsDesktopBuild)" == "" msiexec.exe /a "$(SolutionDir)Setup\Setup\bin\$(Configuration)\en-us\RP Event Notification Service.msi" /qn TARGETDIR="$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" /l* "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.log" if "$(IsDesktopBuild)" == "false" msiexec.exe /a "$(OutDir)en-us\RP Event Notification Service.msi" /qn TARGETDIR="$(ProjectDir)obj\$(Configuration)\v1.1adminInstall" /l* "$(ProjectDir)obj\$(Configuration)\v1.1adminInstall\RP Event Notification Service.log" if exist "$(TargetDir)en-us\$(TargetName).log" del "$(TargetDir)en-us\$(TargetName).log" pushd "$(TargetDir)en-us\" & "C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bin\MsiMsp.exe" -s "$(ProjectDir)obj\$(Configuration)\$(TargetName).pcp" -p "$(TargetName).msp" -l "$(TargetName).log" & popd cmd /c echo end processing patch post-build event command lines -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Bob Arnson Sent: Saturday, September 13, 2008 9:22 AM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] is there a way to get current wix vs08 project extensions to output a patch msp? Robert O'Brien wrote: > Question - if the only thing different in the light command that gets applied > using the current wix project templet is ".msi" versus ".pcp" then is the > contents of the a file going to be right, in other words can I just rename > the file in a postBuild event step in order to get the desired .pcp file that > I can then run msimsp.exe against to produce my patch .msp file output. > I believe so. A .pcp is just another MSI database. The WiX v3 patching tools use different tools that aren't supported in Votive. -- sig://boB http://joyofsetup.com/ ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users