Software Deployment Question

Software is downloaded and extracted but msiexec not called

09/15/2018 912 views
I‘ve been searching here and on Google but haven‘t found an answer yet. Sorry if this duplicates a similar question.
I‘m trying to deploy Filemaker Pro 16 with a MI. The downloaded installer is an exe that when run creats a folder with the following structure 
   +- Setup.exe (not the same as the downloaded installer)
   +- Files
         +- Setup.exe
         +- Filemaker Pro 16.msi
         +- (other files)
   +- Extras
         +- (more files)

I zipped the content of the top folder, so setup.exe is at the root of the zip.

I uploaded the zip in the MI and entered the manual command
msiexec.exe /qn /i "Filemaker Pro 16.msi" /l fm.log AI_... (some parameters for the installation like license code etc.)
When I run this MI i get the messages from kace that the installation is about to start, when I click "continue" the zip is downloaded and extracted but the msiexec.exe command is not called and no msiexec log is created. Finally i get the finished installation message from kace agent.
The downloaded software is not removed regardless wheter i say so in the MI.

If I  tell the MI to not remove the downloaded software i can enter the above command in a terminal on the client and the software is installed as expected (minus Bonjour - i‘ll deal with that later). I also get a log file.

What am i doing wrong here?

Thanks for your help

edit 18. Sept 2018

Installation Command - Manual

This software will be installed via:

msiexec.exe /qn /l* "C:\Windows\Temp\FMdwnld.log" -i "C:\ProgramData\Quest\KACE\downloads\160\FileMaker Pro 16\Files\FileMaker Pro 16.msi" AI_USERNAME="User" AI_ORGANIZATION="Acme" AI_LICENSEKEY=aaaaa-bbbbb-ccccc-ddddd-eeeee-fffff-ggggg AI_LANGUAGE="German" AI_APPLICATIONUSERS="AllUsers" AI_SHORTCUTS=0 AI_REGISTRATION=0 AI_SKIPDIALOG=1 AI_DISABLEUPDATENOTIFY=1 AI_DISABLEVERSIONNOTIFY=1

This software will only be installed on the following operating systems: (edit)
   Win 10 Education x64 (10.0.10240)
   Win 10 Education x64 (10.0.17134)
   Win 10 Ent N x64 (10.0.17134)
   Win 10 Ent x64 (10.0.10240)
   Win 10 Ent x64 (10.0.16299)
   Win 10 Ent x64 (10.0.17134)
   Win 10 Home x64 (10.0.17134)
   Win 10 Pro Education x64 (10.0.17134)
   Win 10 Pro x64 (10.0.14393)
   Win 10 Pro x64 (10.0.15063)
   Win 10 Pro x64 (10.0.16299)
   Win 10 Pro x64 (10.0.17134)

3 Comments   [ + ] Show comments


  • In the configuration of the MI, did you check the box to not prepend msiexec.exe?
  • Hi. Yes I checked to not prepend msiexec.exe
    • Go to that machine KAgent.log file, look for "Filemaker Pro 16.msi*", it will tell if you if it tried to run it, and probably why it failed....
      • I don't find "Filemaker Pro 16.msi" in KAgent.log!
  • I played around a bit. I duplicated the MI and changed one installation option: I set "Run command only (do not download file)" to on. (and changed the name of the log file in the msiexec command). My thought was that maybe with a second invocation of the msiexec command (without file download) i could install the software. And so it happenend. So I guess it's fair to say that the msiexec command per se is OK but in the first MI it's never called for whatever reason. Could it be a timing problem that it is called before the file is downloaded and extraceted from the zip? However, the first MI doesn't create a msiexec log at all whereas the second MI does create an - empty - log even when the Filemaker .msi is not there. So i rather think the miexec command does not run at all in the first MI. Strange.
    • Can you post a screenshot of the MI configuration?
      • see main question

Community Chosen Answer

Your msiexec command has a -i not a /i.

You might be better off creating the zip file on a Windows machine, like you said, it shouldn't matter, but it is something to test. Also, I would recommend creating your zip with just the contents of the Files folder, all of the installation files should be in that directory. Be sure to select those files, right click, Send To, Compressed Folder. That will place the MSI file in the c:\programdata\quest\kace\downloads\160 folder and your msiexec.exe can reference it without the path (e.g. /i "FileMaker Pro 16.msi") That will also eliminate issues with the special characters in the Extras folder, because they won't be included in the zip file.

Answered 09/18/2018 by: chucksteel
Red Belt

  • I tried to use the built in compress but Windows complained about illegal characters for a zip file in those folder names. So I ended up deleting those folders since I don't need chinese et al. (I could have renamed them but wasn't sure whether setup relies on hard coded folder names. Or skip the Extras folder completely as you suggest).
    I also created an "Assisted Install.txt" for all my settings and used "<path>setup.exe" /qn as a manual command instead of msiexec. This did the trick. It also has the advantage that the license string does not show up in the KAgent.log.

    About the /i vs. -i: msiexec seems to be happy either way. But thanks for pointing this out.

    Speaking of "path": in another post I read to "always, always, ALWAYS use "%~dp0MSI.msi" after the /i. Any thoughts on that? And what does the %0 refer to in this situation? Normally it's the name of the program that's being called but that would be msiexec.exe and I assume, %~dp of that would point somewhere into c:\Windows. Or wouldn't it?
    • https://stackoverflow.com/questions/5034076/what-does-dp0-mean-and-how-does-it-work
      • I‘m fully aware what %~dp0 means in the context of a batch file but I don‘t get what the %0 referes to when used as a prefix of a msi. And i dont find this answered in the link you provided, i‘m afraid.

All Answers

This is the tail of KAgent.log after the first MI (that only downloads but doesn't run msiexec) has finished:

* Connected to kace.xx.yy (nnn.nnn.nnn.nnn) port 80 (#0)
> GET /packages/160/MS_fmp_16.0.1.162_x64.zip HTTP/1.1
Host: kace.xx.yy
User-Agent: Mozilla/5.0 (Windows 10 Enterprise N/6.3.17134; WOW64) libcurl/7.53.1 OpenSSL/1.0.2g zlib/1.2.8 QuestKACE-Agent/8.1.52
Accept: */*
KUID: 826d61f7-e149-49e3-97e4-29218da9c4eb

< HTTP/1.1 200 OK
< Date: Tue, 18 Sep 2018 13:28:11 GMT
< Server: Apache
< Last-Modified: Fri, 14 Sep 2018 16:01:51 GMT
< ETag: "17857b3a-575d6f119a72a"
< Accept-Ranges: bytes
< Content-Length: 394623802
< Cache-Control: max-age=1
< Expires: Tue, 18 Sep 2018 13:28:12 GMT
< Access-Control-Allow-Headers: x-kace-auth-timestamp, x-kace-auth-key, x-kace-auth-signature, accept, origin, content-type
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Methods: PUT, DELETE, POST, GET, OPTIONS
< X-KACE-Appliance: K1000
< X-KACE-Host: kace.xx.yy
< X-KACE-Version: 8.1.108
< X-KBOX-WebServer: kace.xx.yy
< X-KBOX-Version: 8.1.108
< X-KACE-WebServer: kace.xx.yy
< X-UA-Compatible: IE=9,EDGE
< Content-Type: application/zip

* Connection #0 to host kacesrv.xx.yy left intact
[2018-09-18.15:28:16][KDeploy:KWeb::DownloadUsingCurl ] DOWNLOADFILE: CURL DEBUG INFO --->>> END <<<--- 
[2018-09-18.15:28:16][KDeploy:KWeb::DownloadUsingCurl ] DownloadFile: Downloaded C:\ProgramData\Quest\KACE\downloads\160\MS_fmp_16.0.1.162_x64.zip from http://kacesrv.xx.yy/packages/160/MS_fmp_16.0.1.162_x64.zip Download speed: 90843416.000000 bytes/second
[2018-09-18.15:28:16][KDeploy:DownloadPackageFileFromK]     DLPkgFrmKBOXtoKaceDLdir: KCopyFile from dlURL [http://kacesrv.xx.yy/packages/160/MS_fmp_16.0.1.162_x64.zip] to [C:\ProgramData\Quest\KACE\downloads\160\MS_fmp_16.0.1.162_x64.zip] ...
[2018-09-18.15:28:16][KDeploy:DownloadPackageFileFromK]     DLPkgFrmKBOXtoKaceDLdir: [http://kace.xx.yy/packages/160/MS_fmp_16.0.1.162_x64.zip] exit 5
[2018-09-18.15:28:16][KDeploy:CMIPackageMgr::PreProces] KDeploy    PreprocessPackage:DownloadPackageFileFromKBOXtoKaceDLdir, verifying checksum for MS_fmp_16.0.1.162_x64.zip
[2018-09-18.15:28:16][KUserAlert:CGradientBackgroundT<] KUserAlert    Found and using Custom logo
[2018-09-18.15:28:17][KUserAlert:CMainDlg::SetTimeoutD] KUserAlert    timeout set to 86400 seconds
[2018-09-18.15:28:17][KUserAlert:KUAApp::Run          ] KUserAlert:  showing window
[2018-09-18.15:28:17][KUserAlert:CMainDlg::CheckMFMess] KUserAlert:  --name [6a01de4236119f95454c5a263f1a254f] new message:   @(DLInstalling) FileMaker Pro 16 (x64), append: yes 
[2018-09-18.15:28:17][KUserAlert:CMainDlg::CheckMFComm] KUserAlert:    Mkrfile for PROG METER ON found
[2018-09-18.15:28:17][KUserAlert:CMainDlg::OnStartProg] KUserAlert:  Received request to start progress indicator
[2018-09-18.15:28:23][KDeploy:CMIPackageMgr::PreProces] KDeploy    PreprocessPackage:Unzip FAILED (C:\ProgramData\Quest\KACE\downloads\160\MS_fmp_16.0.1.162_x64.zip) exit 2.
[2018-09-18.15:28:23][KDeploy:CMIPackageMgr::InstallSw] KDeploy    InstallSwitch (MI): package download failure, or missing 'full command' if MI is a .zip file
[2018-09-18.15:28:24][KUserAlert:CMainDlg::CheckMFMess] KUserAlert:  --name [6a01de4236119f95454c5a263f1a254f] new message: FileMaker Pro 16 (x64) @(DLFailed)., append: yes 
[2018-09-18.15:28:24][KUserAlert:KUAApp::Run          ] KUserAlert:  Mkrfile for EXIT found, closing
[2018-09-18.15:28:24][KUserAlert:KUAApp::Run          ] KUserAlert:  closing, wait 1 sec and delete files
[2018-09-18.15:28:25][KUserAlert:wWinMain             ] KUserAlert END
[2018-09-18.15:28:25][KDeploy:KUAController::CreateAle] KUAController::Delete all marker files for suffix 6a01de4236119f95454c5a263f1a254f before create alert
[2018-09-18.15:28:26][KDeploy:KUAController::CreateArg] KUAController::Suffix has been provided, it is 6a01de4236119f95454c5a263f1a254f
[2018-09-18.15:28:26][KDeploy:KUAController::CreateAle] KUAController::CreateAlert  input dump  Command="C:\Program Files (x86)\Quest\KACE\KUserAlert.exe" Arguments="-suffix=6a01de4236119f95454c5a263f1a254f -name=!ENC!RGV1dHNjaGVzIFNlbWluYXI=!ENC! -multimessage=!ENC!IlBTVDE2MF5GaWxlTWFrZXIgUHJvIDE2ICh4NjQpXkRpZSBJbnN0YWxsYXRpb24gaXN0IGJlZW5kZXReMTBeXiI=!ENC! -title=!ENC!IkAoSW5zdGFsbENvbXBsZXRlKSI=!ENC! -fade" wait=1
[2018-09-18.15:28:26][KDeploy:KLaunchClient::LaunchAct] KLaunchClient::LaunchActive()
[2018-09-18.15:28:26][KDeploy:KLaunchClient::DumpState] Launch State:  Command="C:\Program Files (x86)\Quest\KACE\KUserAlert.exe" Arguments="-suffix=6a01de4236119f95454c5a263f1a254f -name=!ENC!RGV1dHNjaGVzIFNlbWluYXI=!ENC! -multimessage=!ENC!IlBTVDE2MF5GaWxlTWFrZXIgUHJvIDE2ICh4NjQpXkRpZSBJbnN0YWxsYXRpb24gaXN0IGJlZW5kZXReMTBeXiI=!ENC! -title=!ENC!IkAoSW5zdGFsbENvbXBsZXRlKSI=!ENC! -fade"  WorkingDir="" Timeout=3600000 ShouldDetach=0 ShowWindow=1 Redirect_stdout=0 Redirect_stderr=0 Desktop=winsta0\default Using Wait_Override=0
[2018-09-18.15:28:26][KDeploy:KLaunchSession::CreateAc] KLaunchSession::CreateActiveSession
[2018-09-18.15:28:26][KDeploy:KLaunchUtils::GetIdOfAct] GetIdOfActiveUser: SECURITY_LOGON_TYPE: 2(18) There are no more files.

[2018-09-18.15:28:26][KDeploy:KLaunchUtils::IsSessionA] IsSessionActive: connectState=0
[2018-09-18.15:28:26][KDeploy:KLaunchSession::CreateTo] KLaunchSession::CreateToken
[2018-09-18.15:28:26][KDeploy:KLaunchClientImpl::Launc] KLaunchClientImpl::LaunchInSession()
[2018-09-18.15:28:26][KDeploy:KLaunchClientImpl::Launc] KLaunchClientImpl::LaunchInSession    cmd=[C:\Program Files (x86)\Quest\KACE\KUserAlert.exe -suffix=6a01de4236119f95454c5a263f1a254f -name=!ENC!RGV1dHNjaGVzIFNlbWluYXI=!ENC! -multimessage=!ENC!IlBTVDE2MF5GaWxlTWFrZXIgUHJvIDE2ICh4NjQpXkRpZSBJbnN0YWxsYXRpb24gaXN0IGJlZW5kZXReMTBeXiI=!ENC! -title=!ENC!IkAoSW5zdGFsbENvbXBsZXRlKSI=!ENC! -fade] path=[]
[2018-09-18.15:28:26][KDeploy:KLaunchClientImpl::Launc] KLaunchClientImpl::LaunchInSession - CreateProcessAsUser returned successfully
[2018-09-18.15:28:26][KUserAlert:wWinMain             ] KUserAlert ------------------------ START
[2018-09-18.15:28:26][KUserAlert:wWinMain             ] KUserAlert     called: C:\Program Files (x86)\Quest\KACE\KUserAlert.exe -suffix=6a01de4236119f95454c5a263f1a254f -name=!ENC!RGV1dHNjaGVzIFNlbWluYXI=!ENC! -multimessage=!ENC!IlBTVDE2MF5GaWxlTWFrZXIgUHJvIDE2ICh4NjQpXkRpZSBJbnN0YWxsYXRpb24gaXN0IGJlZW5kZXReMTBeXiI=!ENC! -title=!ENC!IkAoSW5zdGFsbENvbXBsZXRlKSI=!ENC! -fade 
[2018-09-18.15:28:26][KUserAlert:wWinMain             ] KUserAlert:  suffix provided, set as 6a01de4236119f95454c5a263f1a254f
[2018-09-18.15:28:26][KUserAlert:CGradientBackgroundT<] KUserAlert, loading logo C:\ProgramData\Quest\KACE\downloads\custom\client_logo.bmp
[2018-09-18.15:28:26][KUserAlert:CGradientBackgroundT<] KUserAlert    Found and using Custom logo
[2018-09-18.15:28:26][KUserAlert:KUAApp::Run          ] KUserAlert:  showing window
[2018-09-18.15:28:55][KUserAlert:CMainDlg::CloseDialog] KUserAlert    closing: writing snooze choices
[2018-09-18.15:28:55][KUserAlert:KUAApp::Run          ] KUserAlert:  closing, wait 1 sec and delete files
[2018-09-18.15:28:56][KUserAlert:wWinMain             ] KUserAlert END
[2018-09-18.15:28:56][KDeploy:KLaunchClientImpl::Proce] KLaunchClientImpl::ProcessResults - End
[2018-09-18.15:28:56][KDeploy:main                    ] KDeploy    ----- Ending KDeploy.exe -----
[2018-09-18.15:28:56][runkbot:KLaunchClientImpl::ReadS] KLaunchClientImpl::ReadStdPipe   End of ReadStdPipe method
[2018-09-18.15:28:56][runkbot:KLaunchClientImpl::Proce] KLaunchClientImpl::ProcessResults - End
[2018-09-18.15:28:56][runkbot:ProcessOps_LaunchProgram] runkbot    ----- completed -----
[2018-09-18.15:28:56][runkbot:main                    ] runkbot    ----- Exiting runkbot.exe -----
[2018-09-18.15:28:56][KPlugins(4028):KLaunchClientImpl] KLaunchClientImpl::ReadStdPipe   End of ReadStdPipe method
[2018-09-18.15:28:56][KPlugins(4028):KLaunchClientImpl] KLaunchClientImpl::ProcessResults - End
[2018-09-18.15:28:56][KPlugins(4028):KPluginRunProcess] pluginRunProcess    ----- Returned 0 -----
[2018-09-18.15:28:56][KPlugins(4028):KPluginRunProcess] Exit code from 'runkbot' '6 1287144000 -noLogUpload': 0

I don't understand the "UNZIP failed" error, since I can clearly see the unzipped folders:


Upon closer examination I found that the extraction process seemed to choke on folders with special characters in their names, like some in the "Extras" folder:
all those folders were empty.
If I use Windows to extract the zip everything gets extracted OK.
Maybe that's because I created the ZIP on a Mac... but still. 
Answered 09/18/2018 by: dsedv
White Belt

This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ