Hi Tunney,

Does your later build have deleted components? If you are creating a patch 
between two build, where the later build has deleted components.  I am not sure 
if Wix allow this scenario.  This scenario will result in unserviceable state 
for the component.

Looking at the wix source, I think the NullReferenceException is thrown because 
pyro was checking to see if the file from the deleted component is in the 
"RemoveFile" table.  If you don't specify the removed files in the table.  The 
following code would throw.

                                Table removeFileTable = 
this.Transform.Tables["RemoveFile"];

                                foreach (Row removeFileRow in 
removeFileTable.Rows)  << removeFileTable can be null.

Can you try undoing the deleted components in later build and see if it works 
for you?

Thanks
toby

From: Tunney, Stephen [mailto:[email protected]]
Sent: Wednesday, January 22, 2014 9:47 AM
To: [email protected]
Subject: [WiX-devs] Pyro exception

Hey guys,  getting an exception in pyro.

[exec] pyro.exe : error PYRO0001 : Object reference not set to an instance of 
an object.
     [exec]
     [exec] Exception Type: System.NullReferenceException
     [exec]
     [exec] Stack Trace:
     [exec]    at Microsoft.Tools.WindowsInstallerXml.PatchTransform.Validate()
     [exec]    at 
Microsoft.Tools.WindowsInstallerXml.Patch.AttachTransforms(ArrayList transforms)
     [exec]    at Microsoft.Tools.WindowsInstallerXml.Tools.Pyro.Run(String[] 
args)
     [exec]
     [exec] Unhandled Exception: System.NullReferenceException: Object 
reference not set to an instance of an object.
     [exec]    at Microsoft.Tools.WindowsInstallerXml.PatchTransform.Validate()
     [exec]    at 
Microsoft.Tools.WindowsInstallerXml.Patch.AttachTransforms(ArrayList transforms)
     [exec]    at Microsoft.Tools.WindowsInstallerXml.Tools.Pyro.Run(String[] 
args)
     [exec]    at Microsoft.Tools.WindowsInstallerXml.Tools.Pyro.Main(String[] 
args)


Here is my command line (slightly redacted)


[exec] Starting 'C:\Program Files (x86)\WiX Toolset v3.7\bin\pyro.exe 
("D:\Jenkins\workspace\Wasabi5_5.3_Patches/out/Patch/Patch.WebClient.wixmsp" 
-out "D:\Jenkins\workspace\Wasabi5_5.3_Patches/out/Patch/Patch.WebClient.msp"  
-t Product1.x64 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.Product1.x64.wixmst"  -t 
Product2.x64 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.Product2.x64.wixmst"  -t 
Product3.x64 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.Product3.x64.wixmst"  -t 
PRODUCT4.x64 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.PRODUCT4.x64.wixmst"  -t 
Product1.x86 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.Product1.x86.wixmst"  -t 
Product2.x86 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.Product2.x86.wixmst"  -t 
Product3.x86 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.Product3.x86.wixmst"  -t 
PRODUCT4.x86 
"D:\Jenkins\workspace\Root_Patches/out/Patch/Patch.PRODUCT4.x86.wixmst" )' in 
'D:\Jenkins\workspace\Root_Patches\Installation\Patch'

Is there anything else I need to send out?

------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today. 
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
WiX-devs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-devs

Reply via email to