Sorry, I was using my own code and didn't complete the example. Here is the correction: <util:XmlConfig Id="DelVELocation" File="[#IESveInterfaceParameters.xml]" Action="delete" ElementPath="/IESInterface" VerifyPath="IESveLocation" Node="element" On="install" Sequence="1" /> <!--Create Node --> <util:XmlConfig Id="AddVELocation" File="[#IESveInterfaceParameters.xml]" Action="create" ElementPath="/IESInterface " Name="IESveLocation" Value="[VE59LOCATION]apps" Node="element" On="install" Sequence="2" /> Joel
-----Original Message----- From: Joel Paula (hotmail) [mailto:[EMAIL PROTECTED] Sent: Wednesday, October 22, 2008 5:11 PM To: 'General discussion for Windows Installer XML toolset.' Subject: RE: [WiX-users] Bug in x64 build of WiX UtilExtension? Hi, I was stuck with the same error. I moved on to use XmlConfig instead. I guess there really is a bug with XmlFile. Anyway, those commands only add or delete nodes. I had to delete nodes and then re-add them with the correct information. Example using XmlConfig: <util:XmlConfig Id="DelVELocation" File="[#IESveInterfaceParameters.xml]" Action="delete" ElementPath="/IESInterface" VerifyPath="IESveLocation" Node="element" On="install" Sequence="1" /> <!--Create Nodes for Viewpoint--> <util:XmlConfig Id="ViewpointButtonPicture" File="[#IESveInterfaceParameters.xml]" Action="create" ElementPath="/IESInterface " Name="IESveLocation" Value="[VE59LOCATION]apps" Node="element" On="install" Sequence="2" /> HTH Joel -----Original Message----- From: Pally Sandher [mailto:[EMAIL PROTECTED] Sent: Wednesday, October 22, 2008 2:12 PM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Bug in x64 build of WiX UtilExtension? I'm trying to use util:XMLFile to modify the inner text of a tag in an XML file during installation which is installed by my MSI for one of our plug-ins. The XML file is named IESveInterfaceParameters.xml and contains the following code: <?xml version='1.0'?> <IESInterface> <IESveLocation>M:\IES\apps </IESveLocation> <OutputveXMLLocation> </OutputveXMLLocation> <Preferences city='Boulder (CO)' latitude='40.017' minimumFloorArea='0.0' buildingAreaType='Office' thinWalls='1' buildingRoomService='VariableRefrigerantFlow' verticalHorizontalElementTransitionAngle='45.0' adjacencySeparationDistance='0.91441111923921' longitude='-105.283' diagnosticAids='no' minimumRoomHeight='0.0'/> </IESInterface> My installer code is as follows: <Component Id="Dialogs" DiskId="1" Guid="myguid"> ... <File Id="IESveInterfaceParameters.xml" Name="IESveInterfaceParameters.xml" Source="..\..\..\code\Sketchup\Plugins\IESLink\Dialogs\IESveInterfaceParameters.xml" /> ... <util:XmlFile Id="updateVELocation" Action="setValue" File="[#IESveInterfaceParameters.xml]" Value="[VE59LOCATION]apps" ElementPath="/IESInterface/IESveLocation" SelectionLanguage="XPath" /> </Component> All the above code is supposed to do is replace the inner text of the <IESveLocation> tag. Unfortunately the documentation for util:XMLFile leaves a lot to be desired so it doesn't work as yet (back to good old trial & error again). Any help would be appreciated however this isn't what I'm referring to as a bug. The machine that I use to build my MSIs runs XP64. I install the Wix3_x64.msi package when updating my WiX compiler (currently using v3.0.4617.0). When I build my MSI in Visual Studio it is set to build as x86 & checking it in Orca shows the Platform set to "Intel". If I attempt to install it on an XP64 Virtual Machine I get the following in the log: Action 12:08:28: ExecXmlFile. MSI (s) (40:C4) [12:08:28:138]: Executing op: CustomActionSchedule(Action=ExecXmlFile,ActionType=3073,Source=BinaryData,Target=ExecXmlFile,CustomActionData=1€1€C:\Program Files (x86)\Google\Google SketchUp 6\Plugins\IESLink\Dialogs\IESveInterfaceParameters.xml€3€/IESInterface/IESveLocation€€C:\Program Files (x86)\IES\VE 59\) MSI (s) (40:C4) [12:08:28:138]: Creating MSIHANDLE (10) of type 790536 for thread 1988 MSI (s) (40:C0) [12:08:28:138]: Invoking remote custom action. DLL: C:\WINDOWS\Installer\MSI4.tmp, Entrypoint: ExecXmlFile MSI (s) (40:C0) [12:08:28:169]: Generating random cookie. MSI (s) (40:C0) [12:08:28:169]: Created Custom Action Server with PID 1464 (0x5B8). MSI (s) (40:A8) [12:08:28:216]: Running as a service. MSI (s) (40:A8) [12:08:28:216]: Hello, I'm your 32bit Elevated custom action server. MSI (s) (40:C0) [12:08:28:497]: Closing MSIHANDLE (10) of type 790536 for thread 1988 Action ended 12:08:28: InstallFinalize. Return value 3. It then does a rollback & throws up the FatalError dialog. I'm guessing this is because my code is incorrect however when I attempt to install the same MSI on an XP32 Virtual Machine I get the following in the log: Action 12:09:11: ExecXmlFile. MSI (s) (94:10) [12:09:11:325]: Executing op: CustomActionSchedule(Action=ExecXmlFile,ActionType=3073,Source=BinaryData,Target=ExecXmlFile,CustomActionData=1€1€C:\Program Files\Google\Google SketchUp 6\Plugins\IESLink\Dialogs\IESveInterfaceParameters.xml€3€/IESInterface/IESveLocation€€C:\Program Files\IES\VE 59\) MSI (s) (94:10) [12:09:11:340]: Creating MSIHANDLE (10) of type 790536 for thread 1296 MSI (s) (94:38) [12:09:11:340]: Invoking remote custom action. DLL: C:\WINDOWS\Installer\MSI4.tmp, Entrypoint: ExecXmlFile MSI (s) (94:A0) [12:09:11:340]: Generating random cookie. MSI (s) (94:A0) [12:09:11:356]: Created Custom Action Server with PID 532 (0x214). MSI (s) (94:BC) [12:09:11:418]: Running as a service. MSI (s) (94:BC) [12:09:11:418]: Hello, I'm your 32bit Elevated custom action server. MSI (s) (94!88) [12:09:13:637]: Creating MSIHANDLE (11) of type 790531 for thread 648 ExecXmlFile: Found Wow64 API, but unable to link to Wow64DisableWow64FsRedirection function in kernel32.dll MSI (s) (94!88) [12:09:13:653]: Closing MSIHANDLE (11) of type 790531 for thread 648 MSI (s) (94!88) [12:09:13:653]: Creating MSIHANDLE (12) of type 790531 for thread 648 ExecXmlFile: Found Wow64 API, but unable to link to Wow64RevertWow64FsRedirection function in kernel32.dll MSI (s) (94!88) [12:09:13:653]: Closing MSIHANDLE (12) of type 790531 for thread 648 MSI (s) (94:38) [12:09:13:715]: Closing MSIHANDLE (10) of type 790536 for thread 1296 Action ended 12:09:13: InstallFinalize. Return value 3. Why any mention of the WoW64 API exists when running on 32-bit XP is bizarre. Hence I reckon it's a bug. I haven't tried installing the non-x64 WiX MSI as yet but while I do, if anyone could confirm or deny this as being a bug before I report it on the SourceForge tracker it would be a great help. Cheers, Palbinder Sandher Software Deployment and IT Administrator T: +44 (0) 141 945 8500 F: +44 (0) 141 945 8501 http://www.iesve.com **Design, Simulate + Innovate with the <Virtual Environment>** Integrated Environmental Solutions Limited. Registered in Scotland No. SC151456 Registered Office - Helix Building, West Of Scotland Science Park, Glasgow G20 0SP Email Disclaimer ------------------------------------------------------------------------- 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