Followup. I have a better idea what the problem is. Either msiexec is not "installing" the service by executing it with the proper /install argument or it is not executing the install command with Administrator privileges.
>From the log, it appears that the /install option is specified so I'm guessing >the latter case is the real problem although its somewhat inconceivable that >the ServiceControl element does not imply Administrator privileges. I'm guessing the Account and Password attributes are the real culprit. Now to prove it... -----Original Message----- From: Brad Lemings [mailto:b...@rebit.com] Sent: Thursday, May 19, 2011 1:33 PM To: General discussion for Windows Installer XML toolset. (wix-users@lists.sourceforge.net) Subject: [WiX-users] Debugging/Troubleshooting Service Installs Greetings, The following excerpt of a Wix file is supposed to install, stop, start, and uninstall a service (exact names have been tweaked): <Component Id='MySvc' Guid="5E7A07C7-9299-4992-A601-EBB79D441A83" Win64='$(var.Win64)'> <File Id='MySvcExe' Source='$(var.TARGET_DIR)\$(var.MY_SERVICE_OUTPUT_NAME)' KeyPath='yes' Checksum='yes'/> <ServiceInstall Id="InstallMySvc" Name="$(var.MY_SERVICE_SVC_NAME)" DisplayName="$(var.MY_SERVICE_DISPLAY_NAME)" Type="ownProcess" Start="auto" Arguments="/install" ErrorControl="normal" Description="$(var.MY_SERVICE_DESCRIPTION)" Account="[SERVICEACCOUNT]" Password="[SERVICEPASSWORD]" /> <ServiceControl Id="StartMySvc" Name="$(var.MY_SERVICE_SVC_NAME)" Start="install" Wait="yes" /> <ServiceControl Id="StopMySvcSvc" Name="$(var.MY_SERVICE_SVC_NAME)" Stop="both" Wait="yes" /> <ServiceControl Id="UninstallMySvcSvc" Name="$(var.MY_SERVICE_SVC_NAME)" Remove="uninstall" > <ServiceArgument>/uninstall</ServiceArgument> </ServiceControl> </Component> I'm trying to install the resulting .MSI with the following command: msiexec /norestart /lvx*+ mysvc.log /i mysvc.msi The install fails and msiexec reports via GUI that the service failed to start. Part of the log shows this: MSI (s) (2C:D8) [13:17:05:419]: Executing op: RegCreateKey() MSI (s) (2C:D8) [13:17:05:419]: Executing op: ActionStart(Name=InstallServices,Description=Installing new services,Template=Service: [2]) MSI (s) (2C:D8) [13:17:05:419]: Executing op: ProgressTotal(Total=1,Type=1,ByteEquivalent=1300000) MSI (s) (2C:D8) [13:17:05:419]: Executing op: ServiceInstall(Name=My-Svc,DisplayName=My Svc,ImagePath="C:\Program Files\My\My-Svc.exe" /install,ServiceType=16,StartType=2,ErrorControl=1,,Dependencies=[~],,,Password=**********,Description=My Backup Service,,) MSI (s) (2C:D8) [13:17:06:060]: Executing op: ActionStart(Name=RollbackServiceConfig,,) MSI (s) (2C:D8) [13:17:06:060]: Executing op: CustomActionSchedule(Action=RollbackServiceConfig,ActionType=3329,Source=BinaryData,Target=RollbackServiceConfig,CustomActionData=SchedServiceConfig) MSI (s) (2C:D8) [13:17:06:060]: Executing op: ActionStart(Name=ExecServiceConfig,,) MSI (s) (2C:D8) [13:17:06:060]: Executing op: CustomActionSchedule(Action=ExecServiceConfig,ActionType=3073,Source=BinaryData,Target=ExecServiceConfig,CustomActionData=SchedServiceConfigEURMy-SvcEUR0EURrestartEURrestartEURnoneEUR1EUR60EUREUR) MSI (s) (2C:D8) [13:17:06:060]: Creating MSIHANDLE (8) of type 790536 for thread 1496 MSI (s) (2C:34) [13:17:06:060]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIC5E2.tmp, Entrypoint: ExecServiceConfig MSI (s) (2C:20) [13:17:06:060]: Generating random cookie. MSI (s) (2C:20) [13:17:06:075]: Created Custom Action Server with PID 784 (0x310). MSI (s) (2C:78) [13:17:06:091]: Running as a service. MSI (s) (2C:78) [13:17:06:091]: Hello, I'm your 32bit Elevated custom action server. MSI (s) (2C!B8) [13:17:06:263]: Creating MSIHANDLE (9) of type 790531 for thread 3000 MSI (s) (2C!B8) [13:17:06:263]: Closing MSIHANDLE (9) of type 790531 for thread 3000 MSI (s) (2C:34) [13:17:06:263]: Closing MSIHANDLE (8) of type 790536 for thread 1496 MSI (s) (2C:D8) [13:17:06:263]: Executing op: ActionStart(Name=StartServices,Description=Starting services,Template=Service: [1]) MSI (s) (2C:D8) [13:17:06:263]: Executing op: ProgressTotal(Total=1,Type=1,ByteEquivalent=1300000) MSI (s) (2C:D8) [13:17:06:263]: Executing op: ServiceControl(,Name=My-Svc,Action=1,Wait=1,) MSI (s) (2C:D8) [13:17:36:310]: Note: 1: 2205 2: 3: Error MSI (s) (2C:D8) [13:17:36:310]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1920 MSI (c) (FC:38) [13:17:36:310]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg Error 1920. Service 'My Svc' (My-Svc) failed to start. Verify that you have sufficient privileges to start system services. MSI (s) (2C:D8) [13:17:49:482]: Note: 1: 2205 2: 3: Error MSI (s) (2C:D8) [13:17:49:482]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1709 MSI (s) (2C:D8) [13:17:49:482]: Product: My (64-bit) -- Error 1920. Service 'My Svc' (My-Svc) failed to start. Verify that you have sufficient privileges to start system services. MSI (s) (2C:D8) [13:18:19:482]: Note: 1: 2205 2: 3: Error MSI (s) (2C:D8) [13:18:19:482]: Note: 1: 2228 2: 3: Error 4: SELECT `Message` FROM `Error` WHERE `Error` = 1920 MSI (c) (FC:38) [13:18:19:482]: Font created. Charset: Req=0, Ret=0, Font: Req=MS Shell Dlg, Ret=MS Shell Dlg Error 1920. Service 'My Svc' (My-Svc) failed to start. Verify that you have sufficient privileges to start system services. MSI (s) (2C:F0) [13:18:21:216]: I/O on thread 1796 could not be cancelled. Error: 1168 Even with all information being logged, there still isn't enough to determine the problem. When I don't abort the install and the files are copied into their final resting places, I can execute the following commands without any errors: My-Svc.exe /install sc start My-Svc So it must be something wrong with the Wix file. Any clues why the service fails to start? Any tips, references, resources, links useful for debugging service installs using Wix? Any and all help appreciated. Eric. ------------------------------------------------------------------------------ What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ What Every C/C++ and Fortran developer Should Know! Read this article and learn how Intel has extended the reach of its next-generation tools to help Windows* and Linux* C/C++ and Fortran developers boost performance applications - including clusters. http://p.sf.net/sfu/intel-dev2devmay _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users