PSADT 3.9.3 Show-InstallationWelcome bug

Discovered bug with Show-InstallationWelcome function in latest PSADT 3.9.3
$env:Company = [String]$appVendor + ‘*’ # Sets company var for processes to kill

When I run below for e.g.

Show Welcome Message, allow up to 3 deferrals, verify there is enough disk space to complete the install, and persist the prompt for countdown and block app execution

    # Get all process names that start with the value of $AppName
    $AppProcesses = Get-Process | Where-Object { $_.Company -like $env:Company } | Select-Object -ExpandProperty Name

    # Convert the process names to a comma-separated string if any processes are found
    $processNamesToClose = if ($AppProcesses) { $AppProcesses -join ',' } else { "" }

    # Use Show-InstallationWelcome with the -CloseApps parameter to close the identified applications
    if ($processNamesToClose) {
        Show-InstallationWelcome -ForceCountdown 60 -CloseApps $processNamesToClose -AllowDefer -DeferTimes 3 -CheckDiskSpace -MinimizeWindows $true
    }

The window appears to prompt the user to either close progra, defer or continue and if you do nothing for 60 secs it constantly pops up instantly every 1-3 secs in the background without the ability to do anything… I had to stop the deploy-application.ps1 in PowerShell ISE to kill it.

Any thought as to why this is happening? It doesn’t matter what I put in the Show-InstallationWelcome function…what I mean is if you do nothing it constantly loops?

EDIT: I think it’s this -MinimizeWindows $true but turns out it’s not…

The -CloseApps parameter checks very often the process list and automatically refresh the show installation window. The user should close the program or defer the installation, not minimize the window.

You can change the persist interval time in the ‘AppDeployToolkitConfig.xml’ file.

        <InstallationPrompt_PersistInterval>60</InstallationPrompt_PersistInterval>
        <!-- Time in seconds after which the prompt should be repositioned centre screen when the - 
        PersistPrompt parameter is used. Default is 60 seconds. -->
1 Like