This probably relates to the problem I reported in my post of 5/20/2008. A package is successfully installed on a workstation and in the local wpkg.xml is the definition: <package id="dotNet2" name="Microsoft .NET Framework 2.0" revision="2"> <check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0" /> <install cmd='%SOFTWARE%\dotnet2\install /q' > <exit code="194" reboot="true" /> <exit code="1603" /> <exit code="3010" reboot="true" /> </install> </package> Now a manual install of XP service pack 3 on the workstation causes the string in Add/Remove programs to change from Microsoft .NET Framework 2.0 to Microsoft .NET Framework 2.0 Service Pack 1 So to fix this I changed the definition of the package on the server and incremented the revision number as follows: <package id="dotNet2" name="Microsoft .NET Framework 2.0" revision="3"> <check type="logical" condition="or"> <check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0" /> <check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0 Service Pack 1" /> </check> <install cmd='%SOFTWARE%\dotnet2\install /q' > <exit code="194" reboot="true" /> <exit code="1603" /> <exit code="3010" reboot="true" /> </install> </package> I expected that wpkg would notice the revision number, run the upgrade commands (none provided) and test the check condition, which would be satisfied, so it would update the package definition in the local wpkg.xml file. Instead, it tries to run the install command, which fails. Mark Nienberg |