setup.msi fails at call dll from installation on Server 2008 R2
This issue has been solved. See solution.
I'm using Wise Installation Studio 7. The setup.msi installs correctly on Server 2003. It fails on a call dll from installation CA. I can see in the trace log that the Action 14:54:43: Startup. Extracting temporary binaries phase includes my code Startup: Callinstalltoolkit. I have put a debug message box as the first line in the called code and it does not appear. If I remove this CA the products install ok. The dll reads the registery and writes installer properties. Here is the error log section:
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 Action35, entry: ReadDbServerRegistrySetting, library: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp
MSI (c) (D0:E4) [14:55:00:703]: Product: PhoneGuide LIVE! -- 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 Action35, entry: ReadDbServerRegistrySetting, library: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp
MSI (c) (D0:E4) [14:55:00:703]: Product: PhoneGuide LIVE! -- 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 Action35, entry: ReadDbServerRegistrySetting, library: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp
Action ended 14:55:00: Action35. Return value 3.MSI (c) (D0:E4) [14:54:43:125]: Doing action: Action35
Action 14:54:43: Action35. Reading Database Server Registry Setting
Action start 14:54:43: Action35.
MSI (c) (D0:E4) [14:54:43:125]: Note: 1: 2235 2: 3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'Action35'
MSI (c) (D0:FC) [14:54:43:125]: Invoking remote custom action. DLL: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp, Entrypoint: ReadDbServerRegistrySetting
CustomAction Action35 returned actual error code 1157 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (c) (D0:E4) [14:54:43:125]: Note: 1: 1723 2: Action35 3: ReadDbServerRegistrySetting 4: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp
DEBUG: Error 2867: The error dialog property is not set
Internal Error 2867.
MSI (c) (D0:D8) [14:54:43:140]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Action 14:54:43: Action35. Reading Database Server Registry Setting
Action start 14:54:43: Action35.
MSI (c) (D0:E4) [14:54:43:125]: Note: 1: 2235 2: 3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'Action35'
MSI (c) (D0:FC) [14:54:43:125]: Invoking remote custom action. DLL: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp, Entrypoint: ReadDbServerRegistrySetting
CustomAction Action35 returned actual error code 1157 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (c) (D0:E4) [14:54:43:125]: Note: 1: 1723 2: Action35 3: ReadDbServerRegistrySetting 4: C:\Users\ADMINI~1\AppData\Local\Temp\2\MSIF398.tmp
DEBUG: Error 2867: The error dialog property is not set
Internal Error 2867.
MSI (c) (D0:D8) [14:54:43:140]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg
Is there a question in there somewhere?
You have made a series of statements about your error, but I've not seen a question.
On the assumption that you are looking for a possible fix, what have you tried so far?
Bear in mind that Windows 2008 R2 server is 64 bit only, so if your DLL is trying to access the file system and registry - is is able to access the parts you require, if the DLL is a 32 bit version?
When testing on Server 2003 - is this a 32 bit version?
Have you tried with UAC turned off on Server 2008 R2?
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Yes I'm looking for a solution to the error. The dll is c++ win32 compiled in VS 2008, The Server 2003 is 32 bit. I have turned off UAC on the Server 2008 R2 and set the properties on the setup.msi to run in compatibility mode with previous versions of windows. I have replaced the the code in the dll function called to just a message box saying "I'm Here" and then to return ERROR_SUCCESS. I know that files are being written into C:\Users\ADMINI~1\AppData\Local\Temp\2 so there shouldn't be a permission issue. The install also has "Execute Installed Program" CAs that are c++ win32 .exes compiled in VS 2008 that execute okay. If I remove this call the product loads okay. Anythig else I can try? Thank You.
I should have asked where the custom action is sequenced, and if it is in the InstallExecute sequence between InstallInitialize and InstallFinalize, is it running in System or User mode? Is it only reading the registry, and if so, what exact keys?
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
The custom action is sequenced right before 'Display Dialog Setup_Dialog' on the User Interface tab. The installer is running as Administrator in User mode. I have replaced the the code in the dll function called to just a message box saying "I'm Here" and then to return ERROR_SUCCESS.
I determined the problem: I changed the Code Generation property in my Visual Studio 2008 C++ project that created my dll to /MT which causes static linking of the Microsoft libs in the dll.
Out of interest, how did you discover this requirement?
If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.
Would you like to reply?
Login or Register to post your comment.