Ivana
Posts: 5
Joined: Wed Oct 09, 2024 1:49 pm

Installer with chained prerequisites hangs

Dear Advanced Installer team,

We need help with issue we are having with installing prerequisites.

We have one msi installer that is wrapper for 2 other msi installers (also created with Advanced Installer). Parent msi has 2 chained prerequisites installing in silent mode. Also, parent msi is not registered in Windows, only prerequisite msis are registered.

Sometimes it works fine, but sometimes installer just hangs. One prerequisite is installed, we have logs for that installed prerequisite, and parent msi has next in the logs:

Code: Select all

Property(S): AI_MSI_CHAINER_CONDITION = 1
MSI (s) (7C:B4) [10:01:02:464]: MainEngineThread is returning 0
MSI (s) (7C:6C) [10:01:02:481]: RESTART MANAGER: Session closed. 
After this, installer hangs, and second prerequisite installation never starts.

We always ask for admin rights in installer.

So far, we are blocked and cannot find a way to resolve this.

Is there a way to get more logs, or is there something that could potentially break the flow of msi installer?

Looking forward for your response!
Ivana
Posts: 5
Joined: Wed Oct 09, 2024 1:49 pm

Re: Installer with chained prerequisites hangs

Some extra logging we managed to get
MSI (c) (48:BC) [15:58:43:980]: Doing action: AI_InstallPrerequisite
Action 15:58:43: AI_InstallPrerequisite. Configuring prerequisite software
Action start 15:58:43: AI_InstallPrerequisite.
MSI (c) (48:9C) [15:58:43:998]: Invoking remote custom action. DLL: C:\Users\LOCALA~1\AppData\Local\Temp\MSI263F.tmp, Entrypoint: InstallPrereq
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
1: 0
1: 0
1: 0
1: 0
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
Action 15:58:44: AI_InstallPrerequisite. Installing prerequisite software
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
MSI (c) (48!C4) [15:58:44:138]: PROPERTY CHANGE: Adding AI_MISSING_PREREQS property. Its value is 'xxx'.
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrereq: RESET READER
AI_InstallPrerequisite: Installing xxx
MSI (c) (48!C4) [15:58:44:202]: PROPERTY CHANGE: Adding AI_PREREQ_UILEVEL_SWITCH property. Its value is '/qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi'.
AI_InstallPrereq: START ProcessCmdLine
AI_InstallPrereq: START ProcessFullCmdLine
AI_InstallPrereq: mRawCmdLine=APPDIR="C:\Program Files\xxx" SOURCEDIR="C:\Users\xxx\Installer\" LICENSEKEY="default" SELFSERVE="false" INSTALLERPATH="C:\Users\xxx\Installer\Setup-autoupdater.msi" /qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi
AI_InstallPrereq: cmdArguments=SOURCEDIR="C:\Users\xxx\Installer\" LICENSEKEY="default" SELFSERVE="false" INSTALLERPATH="C:\Usersxxx\Installer\Setup-autoupdater.msi" /qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi
AI_InstallPrereq: commandLine=APPDIR="C:\Program Files\xxx"
AI_InstallPrereq: Application path is invalid: APPDIR="C:\Program Files\xxx"
AI_InstallPrereq: END ProcessFullCmdLine
AI_InstallPrereq: mProcessedCmdLine=/i "C:\Users\LocalAdministrator\AppData\Roaming\xxx\prerequisites\Setup-autoupdater.fss.msi" APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi /qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi
AI_InstallPrereq: mApplicationPath=C:\WINDOWS\system32\msiexec.exe
AI_InstallPrereq: END ProcessCmdLine
AI_InstallPrerequisite: Installing xxx completed
AI_InstallPrerequisite: Installing xxx
MSI (c) (48!C4) [15:58:47:597]: PROPERTY CHANGE: Deleting AI_PREREQ_UILEVEL_SWITCH property. Its current value is '/qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi'.
MSI (c) (48!C4) [15:58:47:613]: PROPERTY CHANGE: Adding AI_PREREQ_UILEVEL_SWITCH property. Its value is '/qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi'.
AI_InstallPrereq: START ProcessCmdLine
AI_InstallPrereq: START ProcessFullCmdLine
AI_InstallPrereq: mRawCmdLine=APPDIR="C:\Program Files\xxx" SOURCEDIR="C:\Users\xxx\Installer\" LICENSEKEY="default" SELFSERVE="false" INSTALLERPATH="C:\Users\xxx\Installer\Setup-autoupdater.msi" /qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi
AI_InstallPrereq: cmdArguments=SOURCEDIR="C:\Users\xxx\Installer\" LICENSEKEY="default" SELFSERVE="false" INSTALLERPATH="C:\Users\xxx\Installer\Setup-autoupdater.msi" /qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi
AI_InstallPrereq: commandLine=APPDIR="C:\Program Files\xxx"
AI_InstallPrereq: Application path is invalid: APPDIR="C:\Program Files\xxx"
AI_InstallPrereq: END ProcessFullCmdLine
AI_InstallPrereq: mProcessedCmdLine=/i "C:\Users\LocalAdministrator\AppData\Roaming\xxx\prerequisites\Setup-autoupdater.core.msi" APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi /qb APPDIR="C:\Program Files\xxx" SOURCEDIR=C:\Users\xxx\Installer\ LICENSEKEY=default SELFSERVE=false INSTALLERPATH=C:\Users\xxx\Installer\Setup-autoupdater.msi
AI_InstallPrereq: mApplicationPath=C:\WINDOWS\system32\msiexec.exe
AI_InstallPrereq: END ProcessCmdLine
AI_InstallPrerequisite: Installing xxx completed
// HERE according to logs "Installing xxx" indeed installed, but there AI_InstallPrerequisite freezes. The only way to unfreeze it - run any application that requires elevated rights and will show UAC window,
// if you'll do this, AI_InstallPrerequisite will exit as you see below, installation continues normally

Action ended 16:00:56: AI_InstallPrerequisite. Return value 1.
MSI (c) (48:BC) [16:00:56:997]: Skipping action: AI_InstallPrePrerequisite (condition is false)
MSI (c) (48:BC) [16:00:57:004]: Doing action: ExecuteAction
Action 16:00:57: ExecuteAction.
Action start 16:00:57: ExecuteAction.
Catalin
Posts: 7664
Joined: Wed Jun 13, 2018 7:49 am

Re: Installer with chained prerequisites hangs

Hello Ivana,

This is indeed quite a strange behavior.

I have tried reproducing this on our end but I'm afraid I wasn't able to do so.

If possible, could you please forward me the following resources:

- the AIP files for all 3 projects (prereq 1, prereq 2 and main)

- a download link for all 3 setups (prereq 1, prereq 2 and main)

by email at support at advancedinstaller dot com so I can run some more tests and further investigate this behavior?

Best regards,
Catalin
Catalin Gheorghe - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Common Problems”