[wix-users] Installing a Burn exe from a Windows Service

Steve Jones sjones at excelsiorcg.com
Mon Jan 15 12:26:31 PST 2018


Sorry, the password is retrieved from the registry in the burn exe  and passed to the MSI as a property.  Normally, the property is marked as hidden, but I removed that to see the password.  The password property is properly set.  Here is the command line from the MSI log showing the correct password being passed to the MSI.  I have redacted some paths / names for privacy...

MSI (s) (E0:04) [11:10:15:614]: Command Line: ARPSYSTEMCOMPONENT=1 MSIFASTINSTALL=7 PANELID=110 INSTALLEREXEPATH=<path> BASEINSTALLFOLDER=<Path> BASEDATAFOLDER=<Path> CONFIGURATIONSERVICEHOSTNAME=10.0.0.31 IOTSERVERNAME=10.0.0.249 SERVICEACCOUNTUSERID=<local computer name>\test2 SERVICEACCOUNTSHORTUSERID=test2 SERVICEACCOUNTPASSWORD=test SERVICEACCOUNTPASSWORDENCRYPTED=<encrypted string> DATABASESERVER=localhost DATABASESERVERUSERID=<redacted> DATABASESERVERPASSWORD=<encrypted string> USESQLSERVEREXPRESS=True



Later in the log, the correct password is set:

MSI (s) (E0:04) [11:10:15:616]: PROPERTY CHANGE: Adding SERVICEACCOUNTPASSWORD property. Its value is 'test'.



As you can see from the stack overflow, I am setting the password on the ServiceInstall element to this property -->           Password="[SERVICEACCOUNTPASSWORD]"



Can anyone tell me the meaning of "SecurityDescriptor=BinaryData" - the line that is different in the log regarding the service install?  Seems to me that would be related...



Thanks for looking at this - appreciate it.



-----Original Message-----
From: Hoover, Jacob [mailto:Jacob.Hoover at greenheck.com]
Sent: Monday, January 15, 2018 3:16 PM
To: Steve Jones <sjones at excelsiorcg.com>; WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: RE: Installing a Burn exe from a Windows Service



You haven't provided a means of how you are getting/setting the password property. As someone else suggested, it may be a sequencing issue, but without the authoring it's hard to determine.



If you are using the remember me patterns, and this is an update, are you retrieving the password from a registry key?  Is that in HKLM or HKCU?  What user is your updating service running from?



-----Original Message-----

From: Steve Jones [mailto:sjones at excelsiorcg.com]

Sent: Monday, January 15, 2018 2:01 PM

To: Hoover, Jacob <Jacob.Hoover at greenheck.com<mailto:Jacob.Hoover at greenheck.com>>; WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org<mailto:wix-users at lists.wixtoolset.org>>

Subject: RE: Installing a Burn exe from a Windows Service



Thank you for replying.  I have tried all kinds of variations on the user name and tried both local and AD accounts (test, domain\test, .\test, compname\test).  None solved the issue.  However, just changing the password on the created service works.  That is why I believe the issue is that the password is not being set properly (and the log does show differences).



-----Original Message-----

From: Hoover, Jacob [mailto:Jacob.Hoover at greenheck.com]

Sent: Monday, January 15, 2018 1:17 PM

To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org<mailto:wix-users at lists.wixtoolset.org>>

Cc: Steve Jones <sjones at excelsiorcg.com<mailto:sjones at excelsiorcg.com>>

Subject: RE: Installing a Burn exe from a Windows Service



Disclaimer: I don't have any services to deal with, so just picking out a possible difference.



Looking at the docs for Windows Installer, ServiceInstall:



StartName

The service is logged on as the name given by the string in this column. If the service type is SERVICE_WIN32_OWN_PROCESS use an account name in the form: DomainName\UserName. If the account belongs to the built-in domain it is permitted to specify .\UserName. The LocalSystem account must be used if the type of service is SERVICE_WIN32_SHARE_PROCESS or SERVICE_INTERACTIVE_PROCESS. The CreateService function uses the LocalSystem account if StartName is specified as null and most services therefore leave this column blank



Is it valid to use .\Test?



Ref: https://msdn.microsoft.com/en-us/library/windows/desktop/ms721755%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396



Built-in domain

  This domain contains default local groups, such as the Administrators and Users groups, that are established when the operating system is installed.

The name of this domain is a localized version of BUILTIN.



Test is not a built-in account.



-----Original Message-----

From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Steve Jones via wix-users

Sent: Monday, January 15, 2018 9:36 AM

To: wix-users at lists.wixtoolset.org<mailto:wix-users at lists.wixtoolset.org>

Cc: Steve Jones <sjones at excelsiorcg.com<mailto:sjones at excelsiorcg.com>>

Subject: [wix-users] Installing a Burn exe from a Windows Service



First time email to the mailing list.  I posted on Stack Overflow a question that has gone unanswered and was hoping I could get the answer here:

https://stackoverflow.com/questions/48210603/wix-msi-installed-from-windows-service



The post has the bulk of the details, but long story short, I am trying to install a WIX Burn EXE from the context of a Windows Service (i.e. Process.Start from within a Windows Service) and it is not working.  The exact same burn EXE works if it is installed as the interactive user - not from a Windows service.



Any help would be appreciated.



Thanks.



____________________________________________________________________

WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


More information about the wix-users mailing list