Hi there,
I'm building an Enterprise Advanced Installer setup that installs a Windows Service as one of its components. I want the user to be able to use either LocalSystem or a custom account as the service account.
I've added a custom dialog that allows the user to enter credentials for the service account, defaulting to LocalSystem and a dummy password (which is ignored). I then map the associated public properties for these fields to the service account name and password in the service component, so that it works for either LocalSystem, or a custom username / password combination.
This all works perfectly for LocalSystem. However to get a domain account to work, I have to enable the "Log on as a service" checkbox, but then this stops LocalSystem from working - I get this in the log:
MSI (s) (AC:04) [16:53:43:089]: Executing op: ActionStart(Name=AI_SetLogOnAsService,,)
Action 16:53:43: AI_SetLogOnAsService.
MSI (s) (AC:04) [16:53:43:090]: Executing op: CustomActionSchedule(Action=AI_SetLogOnAsService,ActionType=3073,Source=BinaryData,Target=LogOnAsAService,CustomActionData=LocalSystem)
MSI (s) (AC:68) [16:53:43:122]: Invoking remote custom action. DLL: C:\Windows\Installer\MSI6341.tmp, Entrypoint: LogOnAsAService
CustomAction AI_SetLogOnAsService returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
Action ended 16:53:43: InstallExecute. Return value 3.
Am I doing something wrong, or is this particular workflow not supported by the product yet? All I need is for this particular custom action to be ignored if the user account = 'LocalSystem' and executed for anything else, but I can't see any way of doing this in the UI for Advanced Installer.
Cheers,
Sam