Whether you're a seasoned IT professional or new to the application packaging industry, understanding the ins and outs of the process can be crucial.
Here’s everything you need to know about end-to-end application packaging and deployment with Advanced Installer and SCCM (System Center Configuration Manager):
Application discovery is the initial phase of the application packaging and deployment process. It involves identifying the application that needs to be packaged and deployed.
Here are the detailed steps involved in this phase:
Application packaging is the process of creating an installer package for the application using Advanced Installer.
Here are the detailed steps involved in this phase:
1. Install and Launch Advanced Installer: Download and install Advanced Installer, a professional packaging tool that provides a user-friendly interface for creating installation packages.
New to Advanced Installer? Start your 30-day free trial today and get all the premium features in Advanced Installer!
2. Create a New Project: Open Advanced Installer and create a new project for the application you want to package. Choose the appropriate project type based on the application requirements, such as a standard installation package or a silent installation package.
3. Configure General Settings: Set the general settings for the package, including the project name, product details, and version information. Customize the package properties to match the application's identity and branding.
4. Define Installation Requirements: Specify any prerequisites or dependencies required for the application to function properly. This may include frameworks, libraries, or other software components. Advanced Installer provides options to include these dependencies within the package or as separate installations.
5. Add Application Files: Include the necessary application files in the package. This typically involves adding the executables, DLL files, configuration files, and any other resources required by the application. Advanced Installer provides a file tree view to easily organize and manage the application files.
6. Configure Installation Options: Customize the installation options based on the application requirements. This includes selecting the installation location, creating shortcuts, defining registry entries, configuring file associations, and specifying user interface options.
7. Define Installation Conditions: Set conditions that determine whether the installation should proceed based on specific system requirements or prerequisites. For example, you can check for the presence of specific software components or hardware configurations before proceeding with the installation.
8. Add Custom Actions: Include custom actions in the package to perform additional tasks during the installation or uninstallation process. This may involve executing scripts, running commands, modifying system settings, or performing other custom actions required by the application.
9. Test the Package: Validate the package by performing thorough testing. Install the package on various test systems and ensure that the installation, uninstallation, and functionality of the application work as expected. Address any issues or conflicts that arise during testing.
10. Build the Package: Once the testing is complete and the package is error-free, build the final installer package. Advanced Installer provides options to build different types of packages, such as an MSI file, EXE file, or an AppX package.
11. Generate Deployment Files: After building the package, Advanced Installer generates the necessary deployment files, including the installer package itself, any associated support files, and metadata required for deployment.
12. Package Documentation: Document all the packaging steps, settings, and any specific considerations or configurations made during the packaging process. This documentation serves as a reference for future updates or troubleshooting.
By following these steps, you will successfully create an installer package for the application using Advanced Installer. The package will include all the necessary files, settings, and customizations required for the application deployment.
In an enterprise environment, you could also receive an application installer file already packaged and you can directly integrate it into SCCM.
However, most of the time, you would need to do the basic customization to it (disable auto-update, remove unnecessary desktop shortcuts, and so on), all depending on the company guidelines and requirements.
Testing and validation are crucial steps in the application packaging and deployment process to ensure that the packaged application works correctly and can be successfully installed and uninstalled.
Here are the detailed steps involved in this phase:
By diligently conducting testing and validation, you can ensure that the packaged application is robust, functional, and compatible with the target deployment environment. It allows you to identify and resolve any issues before the application is deployed to production, resulting in a smoother and more reliable deployment process.
Import the packaged application into SCCM. SCCM is a comprehensive management tool that enables centralized deployment and management of applications across a network of computers. It provides features for software distribution, inventory management, and patch management.
To start, make sure you have Microsoft Endpoint Configuration Manager installed on your computer.
This software is part of the Microsoft Endpoint Manager suite and is typically installed on a server dedicated to systems management.
To launch Microsoft Endpoint Configuration Manager, follow these steps:
1. Open the Start menu on your computer.
2. Type "Configuration Manager" in the search bar.
3. From the search results, click on the "Configuration Manager Console" or a similar option to launch the Configuration Manager console.
You may need to provide administrator credentials or additional authentication depending on your system's security settings.
4. Once launched, the Configuration Manager console will provide you with a centralized interface to manage and configure various aspects of your organization's devices and software deployments.
After launching the Microsoft Endpoint Configuration Manager console, you will need to navigate to the Application Management section, where you can manage applications within Configuration Manager.
Follow these steps to find the Application Management workspace:
After accessing the "Application Management" section in the Configuration Manager console, you will need to select the "Applications" option. This allows you to view and manage the existing applications in Configuration Manager.
Follow these steps:
To add a new application in Microsoft Endpoint Configuration Manager, you'll need to create it using the "Create Application" option. This will launch the "Create Application Wizard" to guide you through the process.
Here's how to create a new application:
1. After selecting the "Applications" option in the "Application Management" section, right-click anywhere in the applications list.
2. From the context menu that appears, select the "Create Application" option. This will initiate the "Create Application Wizard."
You can also click on the "Create" button in the toolbar at the top of the Configuration Manager console and select "Application" from the dropdown menu to start the wizard.
3. The "Create Application Wizard" will now open, and you'll be presented with several pages to fill in the necessary information for the new application.
4. On the first page of the wizard, titled "General Information," provide the following details:
- Name: Enter a descriptive name for the application.
- Publisher: Specify the name of the application's publisher or vendor.
- Software version: Enter the version number of the application.
- Language: Choose the primary language of the application.
- Additional information: Optionally, you can provide any additional information or description about the application.
5. Click on the "Next" button to proceed to the next page of the wizard.
After providing the general information for the new application in the "General Information" page of the "Create Application Wizard," you will proceed to the next page where you can specify additional details about the application.
Here's how to do it:
Configure the deployment settings within SCCM. This includes specifying the target collection of devices or users, deployment schedules, installation behavior (e.g., silent installation), and any additional requirements or dependencies.
After selecting the deployment type for the application in the "Specify the deployment type information" page of the "Create Application Wizard," you will proceed to the next page where you can configure the deployment settings specific to the selected deployment type.
Here's how to configure the deployment settings:
1. In the "Deployment Types" page of the wizard, you will see the details of the selected deployment type. This includes information such as the deployment type name, installation program, uninstall program, detection method, requirements, dependencies, and user experience settings.
2. To configure the deployment settings, click on the "Edit" button next to the deployment type details. This will open a dialog box where you can make changes to the deployment settings.
3. Depending on the deployment type and the requirements of your application, you will need to configure the following settings:
a. Installation Program: Specify the command line or script that will be used to install the application. This program defines the steps to be executed during the installation process. You can enter the installation program details in the provided field, including the path to the installer file and any additional parameters or switches required for installation.
b. Uninstall Program: If applicable, specify the command line or script that will be used to uninstall the application. This program defines the steps to be executed during the uninstallation process. You can enter the uninstall program details in the provided field.
c. Detection Method: Define how Configuration Manager will detect whether the application is already installed on a device. The detection method ensures that the application is only installed if it is not already present on the target device. You can choose from various detection methods such as registry key, file, Windows Installer product code, or custom script. Configure the detection method based on the specific requirements of your application.
d. Requirements: Specify any prerequisites or dependencies that need to be present on the target device for the application installation to succeed. This could include requirements such as a specific version of the operating system, available disk space, or certain hardware components. Add the necessary requirements by clicking on the "Add" button and selecting the appropriate condition from the provided options.
e. Dependencies: If the application has any dependencies, such as libraries or other applications, you can specify them in the dependencies section. Configuration Manager will ensure that the dependencies are installed before the main application. To add a dependency, click on the "Add" button and select the dependent application or package from the list.
f. User Experience: Customize the user experience during the application installation by configuring the user experience settings. These settings include options such as displaying notifications to users, allowing users to interact with the installation process, and controlling the behavior of the installation. Adjust the user experience settings according to your preferences and requirements.
4. Once you have configured the deployment settings, click on the "OK" button in the deployment type dialog box to save the changes.
5. Click on the "Next" button to proceed to the next page of the wizard.
By configuring the deployment settings in this step, you define how the application will be installed, uninstalled, detected, and experienced by users during the deployment process. These settings ensure a smooth and successful deployment of the application on the target devices.
After configuring the deployment settings for the application in the previous step, you need to distribute the content of the application to the appropriate distribution points. This ensures that the necessary files and resources for the application are available for installation on the target devices.
Here's how to distribute the content:
After distributing the content of the application to the distribution points, you can configure the user experience settings for the application deployment. This step allows you to customize how users interact with the installation process and provides options for displaying notifications and controlling the behavior of the installation.
Here's how to configure the user experience settings:
1. In the "User Experience" page of the "Create Application Wizard," you will see a section labeled "Installation behavior" where you can define the user experience settings.
2. To display a notification to users before the installation starts, select the "Display a notification to the user before the application is installed" option. This will show a message to users informing them about the upcoming installation.
3. In the "Installation behavior" section, you can choose from the following options:
- Install for system: Select this option if the application should be installed silently in the background without any user interaction.
- Install for user: Choose this option if the application should be installed when a user is logged on to the device. This allows the user to see the progress of the installation and potentially interact with it.
- Install only when a user is logged on: Select this option if the application should only be installed when a user is actively logged on to the device.
4. If you want to allow users to interact with the installation process, select the "Allow users to interact with the installation" option. This allows users to see and potentially customize the installation options.
5. You can further customize the user experience settings by clicking on the "Customize" button. This opens a dialog box where you can specify additional options, such as allowing users to postpone the installation or set a deadline for installation.
6. Once you have configured the user experience settings, click on the "Next" button to proceed to the next page of the wizard.
In the final step of creating a new application in Microsoft Endpoint Configuration Manager, you will review the summary of the application's configuration and make any necessary changes before completing the process. Here's how to review and complete the application creation:
Congratulations! You have successfully created a new application in Microsoft Endpoint Configuration Manager.
Once you have created the application in Microsoft Endpoint Configuration Manager, the next step is to deploy it to the target devices or user collections within your organization. Deploying the application ensures that it is available for installation on the designated devices.
You may find our SCCM Deployment Tool page topic interesting at this stage.
Here's how to deploy the application:
1. In the Configuration Manager console, navigate to the "Application Management" section and select the "Applications" option. This will display the list of applications.
2. Locate the newly created application in the list and right-click on it.
3. From the context menu that appears, select the "Deploy" option. This will open the "Deploy Software Wizard" to guide you through the deployment process.
4. In the "General" page of the wizard, specify the deployment settings for the application:
a. Select the target collection: Choose the device or user collection to which you want to deploy the application. This can be a specific group of devices or users within your organization.
b. Deployment purpose: Select whether the deployment is for "Available" or "Required" installation. Choose "Available" if you want to make the application optional for users to install, or select "Required" if you want to enforce the installation on the target devices.
c. Purpose settings: Configure additional options related to the deployment purpose. For example, you can specify the installation deadline, the maximum allowed run time, and maintenance window if applicable.
5. Click on the "Next" button to proceed to the next page of the wizard.
6. In the "Content" page of the wizard, verify the distribution points where the application content is available. The content should have been distributed in Step 7. Ensure that the necessary content is accessible to the target devices or users.
7. Click on the "Next" button to proceed to the next page of the wizard.
8. In the "Deployment Settings" page of the wizard, configure the deployment settings for the application:
a. Installation behavior: Choose the installation behavior for the deployment, such as whether it should be installed silently in the background or allow user interaction during installation.
b. User experience: Customize the user experience settings, such as displaying notifications or allowing users to interact with the installation process.
9. Click on the "Next" button to proceed to the next page of the wizard.
10. In the "Scheduling" page of the wizard, specify the deployment schedule for the application:
a. Choose the desired scheduling option, such as deploying immediately, scheduling a specific date and time, or using a recurring schedule.
b. Configure the schedule settings based on your requirements.
11. Click on the "Next" button to proceed to the next page of the wizard.
12. In the "User Experience" page of the wizard, specify the user experience settings for the deployment:
a. Choose the desired user notification settings, such as displaying a notification before the installation starts or allowing users to postpone the installation.
b. Customize the user experience options according to your preferences.
13. Click on the "Next" button to proceed to the next page of the wizard.
14. In the "Summary" page of the wizard, review the deployment settings and configurations. Ensure that all the information is correct.
15. Optionally, you can select the checkbox for the "Close this wizard when I click Finish" option if you want to close the wizard automatically after clicking the "Finish" button.
16. Click on the "Finish" button to initiate the deployment of the application.
Before rolling out the application to production, it is advisable to conduct a pilot deployment to a small group of test devices or users. This helps verify the deployment process and allows for any necessary adjustments or fixes.
Once the pilot deployment is successful, proceed with the production deployment. SCCM will distribute the application package to the specified target devices or users based on the deployment configuration.
Once you have deployed the application in Microsoft Endpoint Configuration Manager, it is important to monitor and manage the deployment to ensure that it progresses smoothly and successfully. Monitoring allows you to track the installation progress, view the deployment status, and address any issues that may arise.
Here's how to monitor and manage the application deployment:
After the application has been deployed and installed on the target devices or users, it is important to review and maintain the deployment to ensure its continued effectiveness and address any ongoing requirements or updates. Here's how to review and maintain the application deployment:
Even though the End-to-End process of application packaging in SCCM, seems complex and overwhelming, each step included in the process follows a logic and it’s directly linked to its predecessor.
Combining 2 powerful tools such as Advanced Installer and Microsoft SCCM in the hands of an IT Engineer, will guarantee successful application management in your organization.
Technical Writer at Advanced Installer, Technical Engineer on various enterprise client projects. Experienced in Software Packaging, SCCM infrastructure and System Administrating. Tech enthusiast and music producer in his spare time.