I am using flexera install shield 2016 Basic MSI Project to build Single_MSI_IMAGE. My project contains EXE and several other dlls, the exe must get installed as a service and be started after installation which is working as expected. During MSI major upgrade the service is not getting stopped as the InstallValidate custom action says that the file is in use and i get MsiRMFilesInUse dialog box. I tried to stop service manually using custom action(using sc.exe Stop SERVICENAME) before InstallValidate but since we cannot call custom actions with elevated privileges before InstallInitialize my custom action do not help me in this case. I am executing MSI in normal mode without running as an administrator.
So how can i stop the service before InstallValidate, i am also attaching the sequence of custom actions.
I also tried stopping service from Control Settings using Install Stop/Start but that also doesn't help. Please assist in this issue