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
[email protected]
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
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users