New in version 2.0
New in version 2.0
The following new features, commands and capabilities have been implemented in version 2.0 of the Packaging PowerBench:
New features
- You can import packages from the Microsoft Winget repository.
- The Packaging PowerBench can export packages to Microsoft Intune format.
- You can publish your packages directly from the PPB in Microsoft Configuration Manager and Microsoft Intune.
- The PPB now supports revisioning of packages.
- The command "Save Package As" now saves the whole package (not only Script.ps1) as a new package with new ID in new package directory.
- You can prepare PPB packages for distribution.
- Both the properties of thePackaging PowerBench itself and of packages can now be set and edited via a graphical userinterface.
- The PPB now supports "Undo" and "Redo" via the corresponding buttons on the "Tasks" tab or via the usual keyboard shortcuts CTRL + Z and CTRL + Y, respectively.
- Inversion of reversible commands during uninstallation can be turned off for individual commands ("Prevent uninstallation" button in the "Options" section of the "Start" tab).
- The new ${.\} variable was introduced to be able to reference the package directory everywhere - even within string parameters and arbitrary PowerShell cmdlets.
DSM script commands that have been newly implemented
- GetSystemDefaultLangID (Read-SystemDefaultLanguage)
- GetUserDefaultLangID (Read-UserDefaultLanguage)
- MsgBox (Show-PdMessageBox)
- MsgBoxEx (Show-PdMessageBox)
- MultipleChoiceDlg (Show-MultipleChoiceDialog)
- Replace (Set-FileReplaceText)
- SetFileAttr (Set-FileAttribute)
DSM script commands that have been extended
- Install-Win32Service (new startup-pption "Automatically (delayed)")
New script commands for which there is no equivalent in DSM
- Remove-LocalGroup
- Remove-LocalUser
- Set-ApplicationCompatibilityFlags
- Test-LocalGroup (condition)
- Test-LocalUser (condition)
Miscellaneous
- The PS App Deploy Toolkit included in the runtime files has been updated to version 3.8.4.
The following bugs and problems from version 1.0 have been fixed
- The Packaging PowerBench GUI license check failed when an account could not be resolved.
- The PowerShell code preview (F2) appeared in an unexpected place for nested IF commands.
- The syntax of the Author entry in the template header was incorrect, so the current username was not automatically entered.
- The Exe-Script template contained a logic error because the _Returncode variable was initialized with '' but it was checked for the string 'empty' in the script.
- The MSI script template contained an inconsistency regarding the MSI source file (default path without files subdirectory).
- If several lines were selected by multi-select and should be classified as computer or user specific, only the last selected line was processed.
- Lines selected via SHIFT + arrow keys were not deselected again when the selection was reduced again via the reverse arrow keys.
- In the Registry Editor, when the context menu was invoked via right mouse button press, the focus was not set to the object on which the menu call was made, and therefore the context menu action was applied to a different object than expected.
- It could happen that the list of recently used packages was duplicated on the start page.
- If a package was opened via the Backstage view or the "Open" button of the ribbon and the start page was not displayed as a tab, then the script window of the opened package was not visible (was behind the start page).
- The Unregister-SystemStart command could be classified as user- or computer-related, which caused an error during execution.
- Stop-PdProcess did not terminate dependent processes in the correct order if necessary (for example, Chrome.exe).
- When importing exported DSM packages, the HasUserPart property was set incorrectly (was also set to 1 even though AllowUserPartInstallation was not set in the DSM package).
- When importing exported DSM packages, the DisplayName property was not set if no value was specified for this property in DSM. In this case, the display name is now set to the name.
- The DSM package template for executing PPB packages via Ivanti DSM contained the following errors:
- During pilot installations the PackageDeployment.dll could not be loaded because a wrong method was used to try to load it from a UNC path.
- If the package was executed by a user without local admin rights (in the Auto-Installer), the machine part was not executed via the service.
- If the PPB package had no user part, but the DSM package had a user part, the PPB-user part was still called in the DSM user part.
- The Install-Win32Service command generated a runtime error with certain settings.
- For the Stop-PdProcess command, the flags for the "Also terminate all child processes" and "Also run on uninstall" properties were swapped in the generated script.
- If the Copy command was used in an imported DSM package and only a source directory and no file pattern (e.g. *) was specified in DSM, no files were copied in the converted Copy-File command.
- If the automatic reference to the package directory ".\" was used in an imported DSM package, this was replaced in the converted package only for path parameters, but not for arbitrary parameters.
- If the MSIUninstallProduct command was used in an imported DSM package, it resulted in a runtime error in the converted Uninstall-MsiProduct command.
- The Set-NtfsSecurity command did not correctly pass the selected mode to the function.
- The following commands were executed when uninstalling a package even though they should not have been executed:
- Exit-Package
- Invoke-Goto
- Suspend-ScriptExecution
- The automatic reference to the package directory ".\" was converted correctly only in path parameters when importing DSM packages. Now it is also correctly replaced in other command arguments (e.g. string parameters).
- The dialog of the Copy-File command had no ? button, but maximize and minimize buttons (like a normal window, not like a dialog).
- Clicking inside a selection when multiple commands were selected (without Ctrl or Shift) did not lead to unselect (which is the expected behavior).
- In Interactive-DeployMode, user-related commands were executed even if the execution was in session 0.
- The New-Link command failed when the script was executed from a UNC path.
- The DSM wrapper caused a runtime error under certain conditions.
- The "Insert Command" dialog always displayed all commands in all sections when filtering. In addition, fast scrolling with the mouse wheel caused the PPB to crash.