Preferably you should use the Powershell Deployment Template for your application, this is available from:
\\sccm-prd-ss01\packagesource$\_Deployment Script Template
Your deployment script should have BOTH install and uninstall sections completed and tested in a VM or ORC test lab machine.
Successful testing would be installing an application with no errors, then cleanly removing it using Deploy-Application.exe Install/Uninstall.
Example scripts for other applications are a useful resource and can be found at:
Once written and tested, upload your deployment script to '\\sccm-prd-ss01\packagesource$\Applications'
Open the SCCM console > Software Library > Expand 'Application Management' > Expand 'Applications. Create a new folder for your application:
Name your folder after the application (or suite of apps) you need to deploy, right click the folder and 'Create Application'
This will start the 'Create Application Wizard', configure as follows:
General: Choose 'Manually specify the application information'
General Information: Set the name and version, press 'Next'
NOTE: for the purpose of this document I've not used the correct naming convention:
For advertised staff installs use - 'Application Name - Install'
For required deployments use - 'Application Name - System'
Application Catalog: No changes required, optionally you can add an image file to that appears in the Software Centre for staff advertisements.
Deployment Types: Choose add to create a deployment type. You should only need a single deployment type for a standard application.
If you have used the Deployment Script Template, choose 'Script Installer' > Next.
Enter a name for the deployment type. This should match the name of the application:
Next you need to set the content location to the deployment script files you uploaded earlier.
NOTE: The path you use at this point is the 'CM_Applications' directory NOT packagesource$ (the reason this is the case is file permissions).
You also set your install and uninstall command lines at this point as below:
Next you setup detection rules, these are used by the SCCM client to assess whether it's host has the application installed or not.
Depending on the app, you can detect it's presence in a number of ways that are self-explanatory.
The two best methods are:
- Detect the GUID of an MSI used to install the application (you can find this in the Uninstall reg key HKLM)
- Detect the main executable associated with the application.
In this example, the main executable is detected to indicate the presence of the application:
NOTE: If the file you're detecting is in 'Program Files (x86)' you need the 'this file or folder is associated with..' enabled
If the file your detecting is elsewhere, disable this option.
For a System or required application:
For an Install or 'Available' Application:
After this point you can choose 'Next' leaving everything as default settings.
Your application should now be listed:
Before we can deploy the application, it needs to be uploaded to appropriate distribution points.
Right-click the application > Distribute Content > Next until 'Content Destination' > Add > Distribution Point Group > Tick appropriate areas.
NOTE: Avoid distributing applications to areas where they are not being deployed.
Once complete, the summary tab should show success under 'content status':