Slightly related to this, if you're writing custom actions in numbers, check out http://msiext.codeplex.com. We got a whole C++ framework for CAs, lots of utility code and unit test infrastructure. We love contributions.
dB. @ dblock.org Moscow|Geneva|Seattle|New York -----Original Message----- From: Albert At School [mailto:alb...@de-notenbalk.nl] Sent: Monday, April 26, 2010 4:36 AM To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] C++ Custom Action Dll not running on Windows Server 2008 R2 Hi, I think it is good practice to use statically linked DLLs for CA DLLs; it is not just the MSVCRT that can cause problems. If you use third party, or own external, components the problem arises as well :) So therefor we build the CA DLL with everything statically in it with the least external references like that. Regards, Albert van Peppen Senior System Engineer Insad Grafisch b.v. -----Oorspronkelijk bericht----- Van: dB. [mailto:dbl...@dblock.org] Verzonden: zondag 25 april 2010 1:51 Aan: General discussion for Windows Installer XML toolset. Onderwerp: Re: [WiX-users] C++ Custom Action Dll not running on Windows Server 2008 R2 Your custom action DLL is dynamically linked and requires the Visual Studio runtime (if you install it, it works). You need to change how the DLL links to MSVCRT if you want to redistribute your installer without the Microsoft Visual C++ 2008 SP1 Redistributable Package. Alternately you may bootstrap that in your installer and make it a pre-requisite. dB. @ dblock.org Moscow|Geneva|Seattle|New York -----Original Message----- From: Sam Domonkos [mailto:s...@pfgltd.com] Sent: Friday, April 09, 2010 4:10 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] C++ Custom Action Dll not running on Windows Server 2008 R2 Thanks for the tip on the Dependency Walker tool. Running depends.exe. My verbose log states in the relevant lines. ... MSI (c) (78:44) [13:18:52:817]: Doing action: PIDKEYValidation Action 13:18:52: PIDKEYValidation. Action start 13:18:52: PIDKEYValidation. MSI (c) (78:D4) [13:18:52:823]: Invoking remote custom action. DLL: C:\Users\sam\AppData\Local\Temp\MSI9C65.tmp, Entrypoint: PIDKEYValidation MSI (c) (78:C0) [13:18:52:826]: Cloaking enabled. MSI (c) (78:C0) [13:18:52:827]: Attempting to enable all disabled privileges before calling Install on Server MSI (c) (78:C0) [13:18:52:828]: Connected to service for CA interface. MSI (c) (78:44) [13:18:52:900]: Note: 1: 1723 2: PIDKEYValidation 3: PIDKEYValidation 4: C:\Users\sam\AppData\Local\Temp\MSI9C65.tmp Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action PIDKEYValidation, entry: PIDKEYValidation, library: C:\Users\sam\AppData\Local\Temp\MSI9C65.tmp MSI (c) (78:44) [13:18:55:866]: Product: WITS 3.04 -- Error 1723. There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor. Action PIDKEYValidation, entry: PIDKEYValidation, library: C:\Users\sam\AppData\Local\Temp\MSI9C65.tmp Action ended 13:18:55: PIDKEYValidation. Return value 3. DEBUG: Error 2896: Executing action PIDKEYValidation failed. The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2896. The arguments are: PIDKEYValidation, , Action ended 13:18:55: WelcomeDlg. Return value 3. MSI (c) (78:C0) [13:18:55:884]: Doing action: FatalError Action 13:18:55: FatalError. ... I basically am using this demo with an addition of some conditionals to determine which features are installed by the PIDKEY http://www.wixwiki.com/index.php?title=Simple_Custom_Action_Dll After installing Microsoft Visual C++ 2008 SP1 Redistributable Package (x86) <http://www.microsoft.com/downloads/details.aspx?familyid=A5C84275-3B97-4AB7 -A40D-3802B2AF5FC2&displaylang=en> on the Virtual Machine with Windows Server 2008 R2 my Dll ran fine. --Sam On 4/8/2010 4:10 PM, Bob Arnson wrote: > On 4/8/2010 1:14 PM, Sam Domonkos wrote: > >> I know this is not specifically WiX 3.5, but I have a custom action that >> will run on XP 32bit, Windows7 32 and 64bit, but will not run on Windows >> Server 2008 R2. >> > Use Dependency Walker to see if the DLL has dependencies you're not > accounting for. Otherwise, generic advice: use a verbose log to see how > far your code gets. (You didn't say how it fails so it's difficult to be > more precise.) > > ---------------------------------------------------------------------------- -- Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ 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 ------------------------------------------------------------------------------ _______________________________________________ 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