Migrate PSADT-based Apps
Applies to: Patch My PC Cloud
Important This documentation is for a pre-release feature still under development and, therefore, incomplete. As a result, both functionality and documentation are subject to change. Once this feature is released, it will be announced and this banner removed. Patch My PC (PMPC) Cloud evaluates ConfigMgr applications using an initial full scan when the environment.
When applications are inventoried from ConfigMgr, PMPC Cloud analyses the application metadata to understand how the application is installed and how it should be migrated. As part of this process, the installation command line is evaluated and the primary installer file is identified from the application’s content source folder.
Identifying a PSADT-based App
ConfigMgr does not explicitly label an application as PSADT-based. In most cases, the easiest way to confirm that an application is PSADT-based is to select the application from the Migration dashboard and review the Installation Program field.
If the Installation Program contains a Deploy-Application.exe, Deploy-Application.ps1, Invoke-AppDeployToolkit.exe or Invoke-AppDeployToolkit.ps1 the application can be considered PSADT-based.

During the migration migration deployment flow, the Configuration tab indicates when an application has been identified as PSADT-based. Detection is based on the presence of PSADT functions within the script, at which point the PSADT module is automatically enabled. The script content is analysed and logically split into pre-install and post-install scripts.

When migrating PSADT-based applications, AI can be used to assist with parsing the PowerShell script and identifying key components, including the primary installer and the MARK: Pre-Install, MARK: Install, and MARK: Post-Install sections. This allows the script to be accurately split around the main installer and mapped to the appropriate pre-install and post-install execution stages.
Without AI assistance, reliably separating PSADT scripts into pre-install and post-install logic can be challenging, particularly when scripts are heavily customised or do not follow common PSADT structures. AI-assisted analysis improves accuracy in identifying the primary installer and its surrounding MARK logic, enabling more applications to be migrated successfully.
AI usage is optional and can be disabled at any time from the Cloud Portal settings. For more information, see Manage Cloud AI Usage.
Migration Behavior of PSADT-based Apps
When the application is migrated, PatchMyPC-ScriptRunner.exe becomes the primary installer and orchestrates execution of the pre-install script, main installer, and post-install script. This model preserves the original installation behaviour while enabling Patch My PC–specific enhancements that would not be possible with a simple “lift and shift” migration.
In the example shown, the Rainbow application has been identified as PSADT-based, and the PSADT script has been automatically split during the migration flow. Logic originally contained within the MARK: Pre-Install section of the PSADT script has been mapped to the Pre-install script.

In the original PSADT script for Rainbow, both the MARK: Pre-Install and MARK: Install sections contain executable actions.

The pre-install section runs a prerequisite installer (vstor_redist.exe), while the install section performs the primary application installation (Rainbow_Installer_Machine_Offline.msi). During migration, these sections are analysed and separated so that prerequisite logic is mapped to the Pre-install script, and the primary installer is executed as the main install action, preserving the original execution order.
You can edit any generated Pre-install and Post-install scripts to review whether PMPC Cloud has correctly identified the MARK: Pre-Install, MARK: Install, and MARK: Post-Install execution order.

Note Because the original PSADT script is split into separate Pre-install and Post-install scripts during migration, any existing code signature is invalidated. If script signing is required in your environment, export the generated script blocks, re-sign them, and then re-import them before completing the migration.
Preserved Properties of PSADT-based Apps
The following information indicates the properties that are carried forward from the ConfigMgr application to the migration deployment flow when the application is either matched to a PMPC Catalog App or a PMPC Custom App. See How Migration Type is Determined to understand how Configmgr applications are matched during migration.
PMPC Catalog App Properties Preserved
Source Files (the main installer file will be replaced with the current version of the matched application in the Patch My PC catalog)
DisplayName
Return Codes
Vendor
Description
Information URL
Privacy URL
PSADT Script
"MARK: Pre-Install" mapped to Pre-install Script
"MARK: Post-Install" mapped to Post-Install Script
Note If more than one action is detected in a MARK install section, additional actions are reassigned to the MARK: Pre-Install or MARK: Post-Install scripts, as only one action can run in the main install stage.
PMPC Custom App Properties Preserved
Source Files
DisplayName
Vendor
Description
Version
Return Codes
Information URL
Privacy URL
PSADT Script "MARK: Pre-Install" mapped to Pre-install Script "MARK: Post-Install" mapped to Post-Install Script
Note If more than one action is detected in a MARK install section, additional actions are reassigned to the MARK: Pre-Install or MARK: Post-Install scripts, as only one action can run in the main install stage.
Detection Rules
Last updated
Was this helpful?