LANDesk uses some parameters of MSI, but can't use all. Better is to use a Batch or other script (AutoIT) to install it with parameters.
See these threads:
So when you deploy a msi using LANDesk and use MSI as a distribution package type, there is no need to specify UI and reboot MSI command line options since they are controlled by the delivery methods. So if you don't want the package to reboot and have no UI, select/create a delivery method that is silent with never reboot.
I found this in the online help and Paul's description in the thread from above:
When creating a Distribution Package, there is an option to include a command line. In the case of an MSI package, this field can only be used to specify a list of MSI Properties in this format: property1=value1 property2=value2 property3=value, and so on. One example of an MSI Property is TRANSFORMS.
The command line switches that are documented in MSI-related documentation, such as /q, /f, and so on, are actually msiexec command line switches. Only msiexec understands them. When LANDesk distributes an MSI package, it calls the MSI APIs directly. It does not use msiexec. Therefore, it isn't possible to specify msiexec command line switches in the command line field.
For many of the options that would be enabled with a command line switch when using msiexec, equivalent functionality is provided in through the delivery methods and distribution package tools. For others, no equivalent functionality is provided because it isn't needed.
Below is a list of some msiexec command-line switches and how equivalent functionality is provided (or not) in the LANDesk interface:
- / q: to control the user feedback options during an installation, use the Feedback options in the distribution package tool.
- /a: Administrative installation would be meaningless under LANDesk. It needs to performed manually by the administrator. Therefore, no equivalent functionality is provided in LANDesk.
- / f: reinstall an MSI package. LANDesk will always reinstall the primary packages, so this option is implied. Note: If you don't want to reinstall, simply deploy the msi application as a dependent package instead of the primary package. If you don't have another package to make primary, you can create a package to deploy an empty batch file and make the MSI a dependent package. Then detection will take affect for the MSI application and it will only be installed on devices that it isn't already installed on.
- /x: uninstall an MSI package. Equivalent functionality is provided by the uninstall option in the distribution package tool.
- / j: advertise an MSI package. LANDesk implements similar concepts through policy-based delivery and the local device software distribution portal.
- / l: logging. Sdclient.exe gathers status and creates log files on the device by default.
- /p: install a patch; used to patch administrative images. Equivalent functionality is provided under LANDesk through Patch Manager and also with software distribution and dependent packages. Note: Deploy the latest patch as the primary package and set up a dependency chain for the MSI application and/or other patches.
So I prefer the use of msiexec and so I've to use EXE (with AutoIT) or Batch file distribution package... and I think it's more flexible...
Correct, this offers much more flexibilty (e.g., where you want to store the msi log files, etc..), however, using a wrapper is one more additional step to maintain. It would be great to have more options in delivery methods for MSIs. In the meantime - AutoIT