Application Management Create your first Package

From Syntaro Help

Create new Package

OwnPackage 001.png
To create your own Package in the Application Management Module select "New Package".

This opens a new Blade.

OwnPackage 002.png
You can Type the Name of the Package you like to create. We recommend a Name like Publisher_AppName, without spaces, versions and special characters.
You can also specify if it is a freeware or how many licenses you own. This is for the basic license management feature which is built into Syntaro.

Press Save and the Package is created and you can create the first version.

Create new Version

First of all, a Package Version is defining one configuration of an application including the source files and the installation logic. In this guide you will learn all about the options you have. With the Application Management Module you can have always one Productive(Active) Version and as many you like in the Archive state. As soon you set a version as productive the clients will update to this version. With the Application Management P2 module you can build more Deployment Rings.

OwnPackage 005.png
Press on the "New Version" Link.

This opens a new Blade.

OwnPackage 006.png
Now in this view we have a lot of information's to fill in and we have a lot of options by using PowerShell.

The version should always be the application version that was defined by the publisher, that makes it easier for you to identify it later.

Then in the first Dropdown, you can Select the Deployment Ring of the Version. Normally you can choose for a new package directly "Production", this makes testing a lot easier. If you have already another Version which is in state "Production" then you should choose "Archive" to test it first before starting the deployment.

In the next field you can specify the availability date and time. Clients will receive this version not earlier than this time. The time is always converted to the local time on the device.

In the next section we explain the scripts you have to specify in this blade

Scripts for Detection, Requirements, Install and Uninstall

The whole package installation is controlled trough PowerShell Scripts which give you a big flexibility to control the installation flow. The following return values are expected:

Detect Script:

  • $true = Application is installed
  • everything else = Application is not installed

Requirement Script:

  • $true = Application can be installed
  • everything else = Application cannot be installed

Install Script:

  • throw an error if the script fails.
  • everything else = All went OK

Uninstall Script:

  • throw an error if the script fails.
  • everything else = All went OK

In the following section we will guide you trough creation of the first version with really basic scripts. More Examples can be found in the Examples page.


In the Detection area, you have to place a PowerShell Script to detect if the Software is installed on the Client. If the Software is already installed in the right version we do not need to install it again. Normally we also accept newer versions as installed, so we can prohibit a downgrade.

We assume you have already configured the Base Script, therefore we use the simpler commands we provide with it.

Here is an MSI Example:

if(Get-InstalledApplication -ProductCode "{A26C5780-A3D0-40A7-83D4-C6A216225C35}"){
} else {

Here is an EXE Example:

if(Get-InstalledApplication -Name "Microsoft Office"){
} else {


In the Requirements tab, we can check some prerequisites on the device. The Requirements have to be fulfilled before the package content is downloaded. In this example, you can find out if the System is a 64Bit OS. It is also possible to check if another Application is already installed and with that control the installation flow:


If you have no requirements to check, just type



For the install command, you can just add a simple command line, but it’s better to have a log file that can help you when troubleshooting problems.

This Example is using our Base Script to Install an MSI:

Execute-MSI -Action Install -Path test.msi

This Example is using our Base Script to Install an EXE:

Execute-Exe -Path "setup.exe" -Arguments "/s"


Uninstalling the app is specified like the Install script.

For the Uninstall we can also use the Base Script, -Action is uninstall and as -Path we use the MSI Product-ID or the MSI filename.

Execute-MSI -Action Uninstall -Path "{18EA748B-457D-492E-A329-E8E04D7F521F}"

When you finished all the scripts, you can press the "save" button and start uploading the source files of your package.

Manage Content

Commands 009.png
In the new created version, you need to upload the content/files for that Version.
Commands 010.png
If you have a lot of files or a folder structure, then creating a Zip file of them and Upload them is easier than single files. On the clients you can use the Expand-Zip Function of the Base Script. You se an example for the scripts here.
When you have selected your file and clicked on upload, you see a list of the files which are already uploaded and you have the option to download them later or to delete files.

Now you are ready to deploy the package with Intune or to test your package first.