Yes, I rebuilt a custom DLL to minimize footprint. And yes, the WiX toolset work fine (I tripled-checked it).
The WiX-people don't make the same newbie mistakes as I do :P > From: r...@robmensching.com > Date: Fri, 14 May 2010 20:37:12 -0700 > To: wix-users@lists.sourceforge.net > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > Quick question, this is from a rebuilt custom action DLL, right? The > defaults provided by the WiX toolset work fine, right? I was certain that we > *always* link with the static CRT. > > On Fri, May 14, 2010 at 4:28 PM, Kristoffer Danielsson < > kristoffer.daniels...@live.se> wrote: > > > > > I solved it. Damn, I wish the MSI log would be more detailed! It's a > > classic mistake! For those interested, read on :) > > > > > > > > I have stripped WixUIExtension.dll down to a tiny DLL with only two > > exported APIs: "PrintEula" and "ValidatePath". Hence, a very simple custom > > action - used by WIX. It worked like a charm until I switched from VS 2008 > > to VS 2010. Then it started complaining on clean machines. I should have > > seen this earlier... > > > > > > > > PrintEula.dll was compiled with "MultiThreaded DLL" option set. In VS 2010 > > this means it links to MSVCR100.DLL dynamically. Now, this file is pretty > > new, so none of the Windows versions are shipped with it. Hence, when the > > custom action is about to load - it fails. Changing the option to > > "MultiThreaded" removes the dependency, and we're ready to fly again! > > > > > > > > The rule of thumb is to never link to DLLs in custom action DLLs, unless > > you are dead sure that they are present in the system. > > > > > > > > Thanks for your time. > > > > > > > > > From: kristoffer.daniels...@live.se > > > To: wix-users@lists.sourceforge.net > > > Date: Fri, 14 May 2010 11:49:14 +0200 > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > > > > > > > > Below you see the MSI log when run on Windows 7. As you can see, > > WIXUI_INSTALLDIR_VALID is indeed set. > > > > > > > > > > > > Action 11:43:33: WixUIValidatePath. > > > Action start 11:43:33: WixUIValidatePath. > > > MSI (c) (E8:98) [11:43:33:098]: Creating MSIHANDLE (1) of type 790542 for > > thread 5784 > > > MSI (c) (E8:A0) [11:43:33:100]: Invoking remote custom action. DLL: > > C:\Users\KRISTO~1\AppData\Local\Temp\MSI840E.tmp, Entrypoint: ValidatePath > > > MSI (c) (E8:FC) [11:43:33:198]: Cloaking enabled. > > > MSI (c) (E8:FC) [11:43:33:198]: Attempting to enable all disabled > > privileges before calling Install on Server > > > MSI (c) (E8:FC) [11:43:33:198]: Connected to service for CA interface. > > > MSI (c) (E8!54) [11:43:33:393]: Creating MSIHANDLE (2) of type 790541 for > > thread 3668 > > > MSI (c) (E8!54) [11:43:33:395]: PROPERTY CHANGE: Adding > > WIXUI_INSTALLDIR_VALID property. Its value is '1'. > > > MSI (c) (E8!54) [11:43:33:395]: Closing MSIHANDLE (2) of type 790541 for > > thread 3668 > > > MSI (c) (E8:A0) [11:43:33:403]: Closing MSIHANDLE (1) of type 790542 for > > thread 5784 > > > Action ended 11:43:33: WixUIValidatePath. Return value 1. > > > > > > > > > > > > > > > > > > Vista x64 Home Premium SP2, running under VMWare. WIXUI_INSTALLDIR_VALID > > is never assigned a value! > > > > > > > > > > > > Action 11:05:20: WixUIValidatePath. > > > Action start 11:05:20: WixUIValidatePath. > > > MSI (c) (A4:AC) [11:05:20:208]: Creating MSIHANDLE (1) of type 790542 for > > thread 2220 > > > MSI (c) (A4:1C) [11:05:20:208]: Invoking remote custom action. DLL: > > C:\Users\KRISTO~1\AppData\Local\Temp\MSIA552.tmp, Entrypoint: ValidatePath > > > MSI (c) (A4:7C) [11:05:20:208]: Cloaking enabled. > > > MSI (c) (A4:7C) [11:05:20:208]: Attempting to enable all disabled > > privileges before calling Install on Server > > > MSI (c) (A4:7C) [11:05:20:208]: Connected to service for CA interface. > > > MSI (c) (A4:1C) [11:05:20:365]: Closing MSIHANDLE (1) of type 790542 for > > thread 2220 > > > Action ended 11:05:20: WixUIValidatePath. Return value 1. > > > Action 11:05:20: InvalidDirDlg. Dialog created > > > > > > > > > > > > > > > > > > Any ideas? Any help is greatly appreciated! This is becoming a major > > issue :( > > > > > > > > > > > > > > > > > > > > > > > > > From: kristoffer.daniels...@live.se > > > > To: wix-users@lists.sourceforge.net > > > > Date: Fri, 14 May 2010 11:26:28 +0200 > > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > > > > > > > > > > > Printer spooler is running, and XPS document printer is installed (e.g. > > it is accessible via Notepad -> Print). > > > > > > > > > > > > > > > > I did notice that this line is NEVER printed in the log when path > > validation should occur: > > > > > > > > PROPERTY CHANGE: Adding WIXUI_INSTALLDIR_VALID property. Its value is > > '1'. <-- never seen! > > > > > > > > PROPERTY CHANGE: Adding WIXUI_INSTALLDIR_VALID property. Its value is > > '0'. <-- never seen! > > > > > > > > > > > > > > > > Is it possible that the custom action is not being called for some > > reason? > > > > > > > > > Date: Fri, 14 May 2010 10:22:22 +0100 > > > > > From: pally.sand...@iesve.com > > > > > To: wix-users@lists.sourceforge.net > > > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > > > > > > > > > Does your VM have any Printers installed & is the Spooler service > > running? > > > > > > > > > > It works fine for us using WiX v3.0 build packages on XP 32-bit, XP > > 64-bit, Vista 64-bit & Windows 7 64-bit. I have a VMWare ESXi server setup > > with version 7 virtual machines for my own & QA's testing purposes. > > > > > > > > > > Palbinder Sandher > > > > > Software Deployment & 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 > > > > > > > > > > -----Original Message----- > > > > > From: Kristoffer Danielsson [mailto:kristoffer.daniels...@live.se] > > > > > Sent: 14 May 2010 00:13 > > > > > To: wix-users@lists.sourceforge.net > > > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > > > > > > > > > > > > > > Hmm... it seems the PrintEula.dll functions are not called at all > > under this virtualized Vista x64! If I hit the "Print" button in the EULA > > dialog, the cursor blinks and then nothing! Still, I'm just guessing here... > > > > > > > > > > > > > > > > > > > > The log: > > > > > > > > > > > > > > > > > > > > Doing action: WixUIPrintEula > > > > > > > > > > ... > > > > > > > > > > Invoke remote custom action. DLL: ... > > > > > > > > > > MyUIPrintEula. Return value 1. > > > > > > > > > > > > > > > This is so weird! It works on my host W7 machine. > > > > > > > > > > > > > > > > From: kristoffer.daniels...@live.se > > > > > > To: wix-users@lists.sourceforge.net > > > > > > Date: Fri, 14 May 2010 00:18:51 +0200 > > > > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > > > > > > > > > > > > > > > > > No, the error lies in WiX! > > > > > > > > > > > > > > > > > > > > > > > > Google only gives you a couple of hits - implying that this error > > does not come from some Microsoft component. > > > > > > > > > > > > > > > > > > > > > > > > >From WixUI_en-us.wxl: > > > > > > > > > > > > <String Id="InvalidDirDlgText" Overridable="yes">Installation > > > > > > directory must be on a local hard drive.</String> > > > > > > > > > > > > > > > > > > > > > > > > Also tried this: > > > > > > > > > > > > msiexec /i MySetup.msi WIXUI_DONTVALIDATEPATH="1" > > > > > > > > > > > > > > > > > > > > > > > > That worked! Hence, the path validation is buggy! > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > From: kristoffer.daniels...@live.se > > > > > > > To: wix-users@lists.sourceforge.net > > > > > > > Date: Fri, 14 May 2010 00:09:29 +0200 > > > > > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under > > VMWare! > > > > > > > > > > > > > > > > > > > > > I modified PrintEula.dll to not use the PathIs* APIs, but it kept > > failing. In the Wix sources I can see the following: > > > > > > > > > > > > > > > > > > > > > > > > > > > > <Publish Dialog="BrowseDlg" Control="OK" Event="DoAction" > > > > > > > Value="WixUIValidatePath" Order="3">1</Publish> > > > > > > > > > > > > > > <Publish Dialog="BrowseDlg" Control="OK" Event="SpawnDialog" > > > > > > > Value="InvalidDirDlg" > > > > > > > Order="4"><![CDATA[WIXUI_INSTALLDIR_VALID<>"1"]]></Publish> > > > > > > > > > > > > > > > > > > > > > > > > > > > > No matter what's causing it, it has disastrous implications. Not > > being able to install my software on virtual machines is simply not an > > option :(. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Date: Thu, 13 May 2010 15:01:32 -0700 > > > > > > > > From: chad.peter...@harlandfs.com > > > > > > > > To: wix-users@lists.sourceforge.net > > > > > > > > Subject: Re: [WiX-users] PrintEula.ValidatePath fails under > > VMWare! > > > > > > > > > > > > > > > > If you Google that error it seems select people hit it even on > > real physical boxes, under other flavors of Windows (98, XP), too. Windows > > misreporting the drive type if I had to guess. Probably nothing wrong with > > your authoring. I'm not seeing any definitive solutions out there. > > > > > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > > > From: Kristoffer Danielsson [mailto: > > kristoffer.daniels...@live.se] > > > > > > > > Sent: Thursday, May 13, 2010 2:33 PM > > > > > > > > To: wix-users@lists.sourceforge.net > > > > > > > > Subject: [WiX-users] PrintEula.ValidatePath fails under VMWare! > > > > > > > > > > > > > > > > > > > > > > > > Hi, > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Using Wix 3.5. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Tried my new MSI under Vista Home Premium, emulated under > > VMWare 7. It gives me this obscure error when I hit "Next" in the > > "Destination Folder"-dialog (simple WIX UI): > > > > > > > > > > > > > > > > > > > > > > > > "Installation directory must be on local hard drive." > > > > > > > > > > > > > > > > > > > > > > > > Reading the logs: > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Doing action: WixUIValidatePath > > > > > > > > > > > > > > > > ... > > > > > > > > > > > > > > > > Action ended ... WixUIValidatePath. Return value 1. > > > > > > > > > > > > > > > > InvalidDirDlg. Dialog created > > > > > > > > > > > > > > > > > > _________________________________________________________________ > > > > > > > > Vårfina smileys till Messenger här! > > > > > > > > http://springpack.msn.se > > > > > > > > > > ------------------------------------------------------------------ > > > > > > > > ------------ > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > > > WiX-users mailing list > > > > > > > > WiX-users@lists.sourceforge.net > > > > > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------ > > > > > > > > ------------ > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > > > WiX-users mailing list > > > > > > > > WiX-users@lists.sourceforge.net > > > > > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > > > > > > > > _________________________________________________________________ > > > > > > > Dela kalender. Se möjligheterna med Hotmail! > > > > > > > > > http://www.microsoft.com/sverige/windows/windowslive/thenewbusy.aspx > > > > > > > > > -------------------------------------------------------------------- > > > > > > > ---------- > > > > > > > > > > > > > > _______________________________________________ > > > > > > > WiX-users mailing list > > > > > > > WiX-users@lists.sourceforge.net > > > > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > > > > > > > > > > > > _________________________________________________________________ > > > > > > Hotmail i mobilen på 5 sekunder! > > > > > > > > http://new.windowslivemobile.msn.com/SE-SE/windows-live-hotmail/defaul > > > > > > t.aspx > > > > > > > > ---------------------------------------------------------------------- > > > > > > -------- > > > > > > > > > > > > _______________________________________________ > > > > > > WiX-users mailing list > > > > > > WiX-users@lists.sourceforge.net > > > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > > > > _________________________________________________________________ > > > > > Hotmail i mobilen på 5 sekunder! > > > > > > > http://new.windowslivemobile.msn.com/SE-SE/windows-live-hotmail/default.aspx > > > > > > > ------------------------------------------------------------------------------ > > > > > > > > > > _______________________________________________ > > > > > WiX-users mailing list > > > > > WiX-users@lists.sourceforge.net > > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > > > > > > > > > _______________________________________________ > > > > > WiX-users mailing list > > > > > WiX-users@lists.sourceforge.net > > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > > _________________________________________________________________ > > > > Hotmail i mobilen på 5 sekunder! > > > > > > http://new.windowslivemobile.msn.com/SE-SE/windows-live-hotmail/default.aspx > > > > > > ------------------------------------------------------------------------------ > > > > > > > > _______________________________________________ > > > > WiX-users mailing list > > > > WiX-users@lists.sourceforge.net > > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > _________________________________________________________________ > > > Vårfina smileys till Messenger här! > > > http://springpack.msn.se > > > > > ------------------------------------------------------------------------------ > > > > > > _______________________________________________ > > > WiX-users mailing list > > > WiX-users@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > _________________________________________________________________ > > Vårfina smileys till Messenger här! > > http://springpack.msn.se > > > > ------------------------------------------------------------------------------ > > > > _______________________________________________ > > WiX-users mailing list > > WiX-users@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/wix-users > > > > > > > -- > virtually, Rob Mensching - http://RobMensching.com LLC > ------------------------------------------------------------------------------ > > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users _________________________________________________________________ Dela kalender. Se möjligheterna med Hotmail! http://www.microsoft.com/sverige/windows/windowslive/thenewbusy.aspx ------------------------------------------------------------------------------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users