I created a script that I want to do a "RUN NOW" on for one-off installs. I have an MSI file that I upload as a dependency, and for the tasks I set it to verify that the MSI file was in the kace dependency directory, which it is - and I want to run the MSI silently. Nothing happens when I do a RUN NOW, and it shows successful. If I upload a ZIP file with the MSI and batch file telling it to "msiexec.exe /i file.msi /quiet", and the task to run the batch file, it works fine. I basically want the MSI to install quietly without any CMD popups, etc. 

Am I doing something wrong here?

Answer Summary:
0 Comments   [ - ] Hide Comments


Please log in to comment

Answer this question or Comment on this question for clarity



Revised answer:

I could not find a way to verify the msi existed on the box in kaces install queues, please post how you did this.

Answered 08/10/2012 by: SMal.tmcc
Red Belt

  • also remember Windows Script Host’s Run Method allows you run a program or script in invisible mode.
    Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run chr(34) & "C:\Batch Files\syncfiles.bat" & Chr(34), 0
    Set WshShell = Nothing

    Copy the lines above to Notepad and save the file with .VBS extension. Edit the .BAT file name\directory or try subbing your msi string in there and running it, have never tried it with a msi but should work.
  • or even
    start /min myfile.bat
  • %allusersprofile% is the folder that you're needing. Not %programfiles%.
  • thanks made the change, do not know exact path so I used "example"
  • So I attach the MSI file as a dependency, then tell it to run the MSI file with paramaters of "msiexec.exe /i "%allusersprofile%\blah\blah\file.msi" /q" then?
  • sorry man, you said you know where the msi is since you use that to verify. so use the entire path of the location of the msi you are naming as verify and it should run.
    • I would verify that a file exists that the msi actually installs. Not what Kace replicates. This is not an accurate way to run it. The first thing it does it replicate the file. So then it sees it, and just verified it's there so there's no use in running its script. The reason it shows successful is because it did replicate the file.

      Then "launch a program"
      Dir: $(KACE_SYS_DIR)
      File: msiexec.exe
      Parameters: $(KACE_DEPENDENCY_DIR)\nameofmsi.msi /qn

      I still think you would be better off doing this as a managed install. It's a lot easier for single msi's.

      Americas KKE Series - K1000 Koncepts: Silent Managed Installs https://kace.webex.com/kace/lsr.php?AT=pb&SP=TC&rID=64372787&rKey=c5b1faa279a1a57f&act=pb

      Americas KKE Series - K1000 Koncepts: Using Managed Installs and File Syncs
  • I tried to do this myself and the msi file was not pushed till the verify was happy. It creates the directory in relation to the script ID(mine was 140) under porgram files\kace\downloads\140 and puts the 140-XXXXXXXXX.xml file in the kbots cache but it does not place the msi here till the verify passes. It changed my verify to see if c:\windows existed and it worked ok, the file was passed from kbox.tmcc.edu/orgs/3/kbots/140/aleks318.msi.5d7fd6a79b1a23858dfaafc6350809af via a https download and installed
Please log in to comment

Doing a managed install shouldn't give you the CMD prompt. If you must use scripting use this bat to exe converter.


Then just run the exe.

Answered 08/10/2012 by: dugullett
Red Belt

Please log in to comment

You state

 I set it to verify that the MSI file was in the kace dependency directory

Where are you talking about exactly?  How did you do that???

Answered 08/10/2012 by: SMal.tmcc
Red Belt

Please log in to comment

Thanks for all the suggestions guys - will try a bunch of these!

Answered 08/10/2012 by: sfigg
Red Belt

Please log in to comment