Configuration Settings
Configuration Settings
The appearance and behavior of the Packaging PowerBench can be configured via the configuration file PackagingPowerBench.exe.config, which is located in the installation directory. The following settings are available in the current version:
Note: Make careful changes to the configuration file and make sure that you do not create a syntactically invalid XML file. Be sure to create a backup copy of the current version BEFORE you make any changes. If necessary, you can restore this copy if the changes made do not lead to the desired result. |
Setting |
Default value |
Possible values |
Description |
ScriptEditorRowMode |
Full |
Normal / Full / Flat |
Defines the display of the lines in standard mode. Normal: Only code selected, expander indented; Full: Whole line selected, expander indented; Flat: Whole line selected, expander flat |
EnableScriptEditorMouseOver |
True |
True / False |
In standard mode the lines under the mouse pointer are highlighted. |
NiScriptCollapseListParameters |
False |
True / False |
In the eScript view, list parameters (e.g. the text for AddIni) are only displayed as " ... ". This setting is only available for backward compatibility reasons and should not be used. |
ShowNiCommands |
True |
True / False |
Controls whether the command names known from Ivanti DSM are also displayed in the command list. |
ShowCustomDialogs |
False |
True / False |
Controls whether the root node "Custom command dialogs" is displayed with the list of individually created dialogs. This system setting should not be changed. |
Language |
<not set> |
de / en |
Defines the display language of the PPB. If no value is specified, the system language is used. If the system language is not supported, the interface is displayed in English. |
ShowTestCommands |
False |
True / False |
The commands "All Commands" (corresponds to Administration > Add Module > All Commands > OK), "Load Commands" and "Save Commands" are displayed in the Ribbon and BackstageView menu. |
FocusScriptOnInsert |
True |
True / False |
Controls whether the focus is set on the script window after inserting a context menu command. |
CommandSelectorBackground |
<not set> (means #FFF6F6F6) |
Colour name or ARGB value |
Background color of the command selection. Examples: "White", "#FFFFFFFF". |
TemplatesDirectory |
Templates |
Valid local or UNC path |
Valid path to the template directories |
DefaultPackageScriptName |
Script.ps1 |
Default name of the script |
Valid script file names. |
PackageConverterPath |
<not set> |
Valid local or UNC path |
Path to the DSM Package Converter, if different from the standard. |
PackageConverterInclude |
.\Common Runtime Files |
List of absolute or relative directories |
Additional directories to be copied in the package directory when converting DSM packages. |
ShowModuleCommands |
True |
True / False |
Controls whether the "Modules" root node is displayed in the command list. |
ShowTokenCommands |
False |
True / False |
Controls whether general commands such as loops, conditions etc. are displayed in a separate root node in the command list. |
RequireExecutionPolicyBypass |
False |
True / False |
Controls whether to attempt to set the execution policy (for the process) to "Bypass". |
ParameterInputTextMode |
SimplePowerShell |
PowerShell / NiVariable / SimplePowerShell / SimpleDollarOnly |
Defines how variables within the PPB are displayed. With the NiVariable setting, you can switch to the familiar DSM display of variable names enclosed in percentage signs. |
NamesPopupPlacement |
Bottom |
Bottom / Top / Left / Right, … |
Preferred position for displaying the selection list of variables. The value set corresponds to the values of the enumeration type "System.Windows.Controls.Primitives.PlacementMode" (see https://docs.microsoft.com/de-de/dotnet/api/system.windows.controls.primitives.placementmode) |
CustomVariableSetters |
Set-PdVar, Start-Program:ExitCodeVariable, Start-ProgramAs:ExitCodeVariable, Read-RegistryValue:ValueVariable, Read-IniFileValue:ValueVariable, Read-StringElement:ResultVariable, Read-LeftString:ResultVariable, Read-MidString:ResultVariable, Read-ReplacePattern:ResultVariable, Read-ReplaceString:ResultVariable, Read-RightString:ResultVariable, Read-FileVersion:ResultVariable, Read-WmiObject:ResultVariablePrefix, Read-WmiObjectCount:ResultVariable, Read-IndexedWmiObject:ResultVariablePrefix, Search-RegistryKey:ResultVariable, Read-XmlNode:IndexVariable, Read-XmlNode:ResultVariable, Install-MsiProduct:ResultVariable, Uninstall-MsiProduct:ResultVariable, Install-MsiPatch:ResultVariable, Repair-MsiProduct:ResultVariable, Install-MsiFeature:ResultVariable |
Valid PowerShell commands of the Package Deployment Module |
Determines which commands create a variable as a result, which is then displayed in the Auto Variable Completion drop-down list. |
ColorizedTokenCommands |
False |
True / False |
Controls whether general commands such as loops, conditions, etc. are highlighted in the command list by a different font and color. |
HideKeywordCommandDisplayNames |
False |
True / False |
Controls whether for general commands like loops, conditions etc. the descriptive display name is shown in the command tree or only the actual PowerShell command. |
UpperCaseRibbonTabCaptions |
False |
True / False |
Controls whether the ribbon tabs (as usual until Office 2013) are labeled in capital letters. |
UseDefaultModifiedFileImage |
True |
True / False |
Show default icon (diskette with pen) for modified files. |
UseModifiedFileOverlayImage |
False |
True / False |
Use overlay symbol (pencil right below) for modified files. Only valid if "UseDefaultModifiedFileImage" is set to "False". |
ShowFileAlreadyOpenMessage |
False |
True / False |
Specifies whether the message "The file ... is already open" is displayed when a file already in the open file is selected. |
ShowScriptTasks |
False |
True / False |
Controls whether commands for viewing and editing individual script files are displayed in the ribbon menu. |
ShowFileTasks |
False |
True / False |
Controls whether commands for viewing and editing (individual) other files are displayed in the ribbon menu. |
AllowEmptyPackageTemplate |
False |
True / False |
If no templates can be found in the template path, new packages can be created without a template if this setting is set to "True". |
NewStatementLocation |
Before |
Before / After |
Specifies whether a newly inserted command is inserted before or after the currently selected command in the script. |
DefaultPackageLocation |
<Not set> |
Valid local or UNC path |
This setting allows you to specify the default directory under which new packages are to be created. If you do not enter anything here, the default value is the subdirectory "PPB Packages" of the user's document directory. |
ShowTemplateBrowseButton |
False |
True / False |
Controls whether a "Browse..." button is displayed on the New Package dialog to be able to select templates outside the template path. |
StickyBlockModes |
Default (corresponds to "After") |
None = 0 Upon = 1 Before = 2 After = 4 AlsoCollapsed = 8 ExcludeBlocks = 16 IfIncludesElse = 32 UponToFirst = 64 AlsoPipelines = 128 AfterToBeforeLast = 256 |
Assignment or indentation of new or drag & drop inserted commands / lines to adjacent command/code blocks in standard mode. So the "stickiness" or the "attractiveness" of neighboring blocks. Default: "Default" = "4" = "After" = (Only) Assign or indent to the last position within the block if the target position is below an expanded block. None = No automatic indentation Upon = If on the block statement Before = If before the block statement After = If after the block statement AlsoCollapsed = Even with closed blocks ExcludeBlocks = No automatic indentation for block commands (on block commands) IfIncludesElse = "ELSE" can be automatically indented for "IF" blocks UponToFirst = If on the block statement, then insert as first element AlsoPipelines = Automatic indent also for pipelines AfterToBeforeLast = If after the block statement, then insert as penultimate element |
SimpleLineDropMarker |
True |
True / False |
Controls whether the line drop marker, which indicates where a command is inserted in the script, is drawn as a simple horizontal line ("True" setting), or as an arrow with indentations and the ability to insert before or after the current selection. |
ShowCommandSelectorForStartPanel |
False |
True / False |
Controls whether the command list is also visible in the home screen. |
LiveSearchDelay |
600 |
Integer |
Number in milliseconds before the search for matching commands is started after the last character has been typed. |
FlatCommandModules |
True |
True / False |
Controls whether nodes that represent modules in the command list are placed at the top level ("True" setting) or below a "Module" root node. |
HelpFilePath |
.\Docs\%Culture%\Packaging PowerBench.chm |
Path to the help files |
If the help files are stored in a location other than the default path, you can specify the path here. |
AdvancedSelectFolderDialog |
True |
True / False |
Controls whether the selection of a folder (e.g. for "New Package", "Open Package", "Destination Path" etc.) should be done with the classic "Select Folder" dialog or with the modern dialog. |
HideParameterNames |
Context |
Comma-separated list of parameter names |
Parameters listed in this setting are hidden in standard mode. |
DefaultPackageLocationAlwaysFirstChoice |
True |
True / False |
Controls whether the path of the last opened package is offered as first choice in the New Package dialog (setting False) or the default path configured in the "DefaultPackageLocation" setting. |
ConfirmDeleteStatement |
True |
True / False |
Controls whether the deletion of commands must be confirmed. |
InstallLocalCommand |
${PackageDirectory}\Deploy-Application.exe |
Valid command for package execution |
Command line that is executed when the local installation of a package is initiated. |
InstallLocalArguments |
-InstallMode ${InstallMode} -LogFileName '${LogFileName}' -LogDirectory '${LogDirectory}' |
Arguments for local installation |
Arguments passed to the command line for immediate installation of a package (setting "InstallLocalCommand"). |
InstallLocalAsAdministrator |
False |
True / False |
Controls whether the script is always executed as local administrator during the local installation or whether it must be activated separately via the corresponding button. |
InstallLocalLogFileNameFormat |
InstallLocal_${PackageName}_${InstallMode}_${Timestamp}.log |
Valid name scheme |
Specifies how the log files of the local Installations are named. |
InstallLocalLogDirectory |
%ProgramData%\CANCOM\PackageDeployment\Logs |
Valid paths |
Defines where the log files of the local installations are stored. |
ShowConditionalCommands |
False |
True / False |
Controls how commands that match conditions are displayed in the command list. Corresponds to the menu item "Conditions" in the "Display" section of the "View" tab. What is interpreted as a condition can be defined via "ConditionalCommandVerbs". |
ConditionalCommandVerbs |
Test |
Verbs of PowerShell-Cmdlets |
All cmdlets with these verbs are evaluated as "conditional commands" and are displayed or not displayed according to the "ShowConditionalCommands" setting. |
ExpandAllScriptBlocks |
True |
True / False |
Controls whether script blocks such as loops or if conditions are displayed expanded or collapsed by default. |
InitialLetterDelay |
600 |
Integer |
Duration in milliseconds after which a newly entered letter is no longer added to the previous entries when jumping to matching commands, but is considered the new first letter. |
CommandCategoryMode |
Default (entspricht NiCommands | PackageDeployment | Selector | SelectorBelowSearch | AutoHideSelector) |
None = 0, Selector = 1 Modules = 2 Global = 4 SelectorBelowSearch = 8 NiCommands = 16 PackageDeployment = 32 AutoHideSelector = 64 FlatGlobal = 128 |
Display of the categories in the command list. None = None Selector = Selection combobox for categories Modules = For each module Global = On top level below "Categories SelectorBelowSearch = Selection-combobox below "Search:" NiCommands = For "DSM Commands" node PackageDeployment = For node/module "PackageDeployment" AutoHideSelector = Show selection combobox only in list view - hide in tree view FlatGlobal = Directly at top level (i.e. without "Categories" node - only effective in conjunction with "Global") |
CustomPsHost |
True |
True / False |
Controls whether the script is executed in a dedicated PowerShell host or from the default App Deployment Toolkit host. |
VariableCompletionAssist |
True |
True / False |
Controls whether the opening curly bracket can be omitted when entering variables (only valid if "ParameterInputTextMode" is configured to "SimplePowershell"). |
RegistryEditorColumns |
135,70,400 |
Comma separated list of the three column widths in pixels or "Auto" for automatic width |
Defines the initial column width of the "Name", "Type" and "Data" columns of the registry editor. Changed values are saved per user and reused next time. |
StartPageAsTab |
True |
True / False |
Controls whether the home page is displayed permanently as a tab. |
MainWindowBounds |
<not set> |
Left, Top, Width, Height |
Coordinates of the PPB window in pixels. |
MainWindowState |
<not set> |
Normal / Maximized |
Determines whether the PPB window is maximized or displayed normally. |
DefaultExportDestinationFolder |
<not set> |
Valid local or UNC path |
Default output path for package export |
ShowEditorsCommands |
False |
True / False |
Controls whether the "Load Editors" button is displayed in the "Management" ribbon. |
ShowStyleCommands |
False |
True / False |
Controls whether the "Load Style Definition" button is displayed in the "Management" ribbon. |
ShowTestCommands |
False |
True / False |
Controls whether the test commands "All Commands", "Load Commands" and "Save Commands" are available. |
ShowRevisionCreatedMessage |
True |
True / False |
Controls whether a corresponding message is displayed after the revision directory has been created. |
ShowRevisionIncrementedMessage |
True |
True / False |
Controls whether a message is displayed after a new package revision is created. |
UpgradeSettings |
True |
True / False |
Controls whether the first time a newer PPB version is started, the user is offered to accept the previous settings. |
UseWebProxy |
False |
True / False |
Controls whether a web proxy is used for accessing the Internet. |
WebProxyHost |
<not set> |
Name or IP-address |
Contains name or IP address of the web proxy, if needed. |
WebProxyPort |
<not set> |
Port-Number |
Contains the port on which the web proxy is reached. |
WebProxyUseDefaultCredentials |
True |
True / False |
Controls whether default credentials or whether the specified proxy user is used. |
WebProxyAccountUser |
<not set> |
Username |
Username used for proxy authentication. |
WebProxyAccountPassword |
<not set> |
Password |
Password of the user used for proxy authentication. |
FlagsCheckBoxPosition |
Right |
Left / Right |
Sets the alignment of the check boxes in settings (left or right of the description). |
UseCodeSigningCertificatePath |
None |
None = Don't digitally sign package files Store = Use certificate from certificate store File = Use certificate file |
Specifies whether package files should be digitally signed and, if so, the source of the certificate to be used. |
CodeSigningCertificateStorePath |
<not set> |
Valid path |
Path to the codesigning certificate to be used in the PowerShell Cert: drive. |
CodeFilesToSign |
Script.ps1 |
List of package files to sign |
Comma-separated list of files to be digitally signed. |
CodeSigningTimestampServer |
<not set> |
Valid URL |
URL to the timestamp server for the signature. You can find a list of public timestamp servers at https://gist.github.com/Manouchehri/fd754e402d98430243455713efada710, for example. |
CodeSigningHashAlgorithm |
SHA256 |
SHA256 / SHA1 / MD5 |
Algorithm to be used for calculating the signature hash. The use of SHA256 is recommended unless there are good reasons not to use it. |
CodeSigningCertificateFilePath |
<not set> |
Valid path |
Path to the codesigning certificate file to be used (.pfx file(Personal Information Exchange)). |
CodeSigningCertificateFilePassword |
<not set> |
Valid password |
Password of the private key of the certificate stored in the certificate file. |
RegistryEditorAutoRecurseWow64 |
False |
True / False |
Controls whether the setting of the "Use 32-Bit Mode" property is inherited. |
RegistryEditorAutoRecurseRepair |
False |
True / False |
Controls whether the setting of the "Restore values during Repair" property is inherited. |
RegistryEditorAutoRecurseUninstall |
False |
True / False |
Controls whether the setting of the "Remove values during Uninstall" property is inherited. |
SetExecutionPolicy |
<not set> |
Unrestricted / RemoteSigned / AllSigned / Restricted / Default / Bypass / Undefined |
Determines the execution policy that is set via "Set-ExecutionPolicy". If the value is empty, then "Set-ExecutionPolicy" is not called - i.e. no explicit setting of the execution policy. |
ReplaceSelectionOnPaste |
True |
True / False |
Controls whether an existing selection is overwritten when inserting content from the clipboard. |
LogLevel |
Information |
Off / Critical / Error / Warning / Information / Verbose / All |
Controls the level of detail of the Packaging PowerBench log file. |
LogPath |
%ProgramData%\CANCOM\Logs |
Valid paths |
Sets the path of the Packaging PowerBench log file. |
LogFileName |
<application>_<timestamp>.log |
Valid name scheme |
Sets the name of the Packaging PowerBench log file. |
OverwriteExistingPackage |
Disallow |
Disallow / Merge / MergeAdjustRevision / Delete |
Controls how to handle existing directories when they are selected as the package directory of a new package. |
StartupCommandsXmlName |
Startup.DsmView.Commands.xml |
Valid filename |
Controls which StartupCommands file is loaded when the Packaging PowerBench is started. |
StartupScriptPanelStylesName |
<not set> |
Valid filename |
Controls which Style file is loaded when the Packaging PowerBench is started. |
DisableReloadStartupSettings |
False |
True / False |
If set to True, changed settings will not take effect until restart of the PPB. |
ShowLineNumbers |
True |
True / False |
Determines whether the column with the line numbers is displayed in expert mode. |
Theme |
<not set> |
Valid themename |
Sets the color scheme of the PPB main window. |
EnableProvisionalThemesEditor |
False |
True / False |
Developer option! Determines whether the ribbon tab for the provisional theme editor is displayed. |
LineNumbersMinDigits |
3 |
Integer |
Reserved column count in the line number view of the expert mode. |
SaveCopyAsNewPowerShellPackage |
False |
True / False |
Controls whether, when using "Save as", the current package is saved first before being saved as a new package. |
PpbHostUIImplemented |
True |
True / False |
For internal use only |
PpbHostUINewCredUI |
False |
True / False |
For internal use only |
LockPackages |
True |
True / False |
Controls whether packages that are open in the PPB are locked for editing by other users. |
PackageLockExpires |
2 |
Integer |
Number in days that the package lock remains valid before it can be broken. Only relevant if "LockPackages" is set to "True". |
ShowPackageLockDetails |
False |
True / False |
Controls whether details of the lock can be displayed when attempting to open a locked package. |
VariablesFilterMatchMode |
NameStartsWith |
Contains / StartsWith / NameStartsWith |
Defines which variables are suggested in the variables-list when typing variable-names. |
ShowPackageSelector |
|
True / False |
Controls whether the tree with the package list is displayed. |
PackageSelectorLocations |
<not set> |
One or more local or UNC paths, separated by newline or |. |
Overwrites the specified path(s) in the DefaultPackageLocation setting. Should not be used. |
PackageSelectorShowPackageIcons |
True |
True / False |
Controls whether the application icons are displayed in the package list tree, if any. |
PackageSelectorContainersFirst |
False |
True / False |
Controls whether folders are displayed at the top of the tree by default. |
PackageSelectorInitialMRULocations |
False |
True / False |
Controls whether the paths of recently used packages are displayed in the package list tree. |
PackageSelectorShowRevisions |
False |
True / False |
Controls whether all revisions or only the last revision is displayed in the tree. |
ToolboxInitialWidth |
235 |
True / False |
Initial width of the window with the package list in pixels. |
ToolboxShowHorizontalScrollbar |
False |
Integer |
Controls whether the package/command list window gets a horizontal scrollbar. |
PackageSelectorDisableFileSystemMonitor |
False |
True / False |
Controls whether the file system monitor, which monitors package directories, is disabled. |
PackagesMRUShowPackageIcons |
True |
True / False |
Controls whether application icons are displayed in the list of recently used packages, if any. |
CrossUpgradeSettings |
True |
True / False |
Controls whether the configuration settings of a previous version should be adopted. |
ShowNativeDsmCommands |
False |
True / False |
Controls whether the root node "DSM Commands" is displayed in the command list with the alias names of Package Deployment commands known from DSM. |
ShowAdtAltNames |
True |
True / False |
Controls whether the command names known from the App Deployment Toolkit are also displayed in the command list. |
ScriptEditorLoadPackageModuleCommands |
True |
True / False |
Controls whether cmdlets from other modules used in the script are displayed in the command list. |
NewPackagesInstalledAppsRegistryKey |
<not set> |
Registry-Key |
Configures the registry key under which the execution of packages is logged. |
NewPackagesDefaultProperties |
<not set> |
Property=Value[,Property=Value...] |
Declares new package properties, extending the standard package properties. |
NewPackagesDefaultPropertiesForUpdate |
True |
True / False |
Specifies whether new package properties are also applied when updating the Runtime Files of a package. |
ShowSplashScreen |
True |
True / False |
Controls whether a splash screen is displayed when the application is started. |
ShowTogglePackageHasUserPart |
False |
True / False |
Defines whether there is a button in the ribbon to specify whether the package has a user part. |
PackageSelectorOpenOnSaveAs |
False |
True / False |
Specifies whether to automatically open a newly created package from the package tree using "Save as". |
PackageSelectorDragMoveConfirm |
True |
True / False |
Configures if moving a package in the package tree must be confirmed through a dialog. |
PackageSelectorShowPackageNames |
True |
True / False |
Specifies whether to display the names of the packages (as specified in the respective Package.xml files) or the names of the package directories in the package tree. |
ShowCommandSelector |
True |
True / False |
Specifies whether to always display the command list. |
ToolboxAlwaysShowTabs |
True |
True / False |
Specifies whether tabs are always displayed in the treeview, even if only one tree (package tree or command list) is displayed. |
WindowChromeCustomFrame |
True |
True / False |
This internal window display setting should not be changed. |
MaximumScriptBackupCount |
2 |
Integer |
Number of backup generations that are created for a script when it is saved. |
MinimumScriptBackupAge |
<not set> |
TimeSpan-value |
Entry in the format <days>.<hours>:<minutes>:<seconds> that an existing backup must be at least as old for a new one to be created. |
PackageSelectorShowRevisionInDisplayNames |
True |
True / False |
Specifies whether revisions are displayed with the package name in the package tree. |
AutoActivateHasUserPart |
True |
True / False |
Determines whether the "HasUserPart" property is automatically activated for a package when a user-related command is inserted. |
ExportSettingsEncryption |
False |
True / False |
Specifies whether encrypted configuration values are to be saved in symmetric encryption or not. |
The configuration settings shown in the table above are not all displayed in the Packaging PowerBench user interface under "File > Options". Which options are displayed with which display names, in which sections and in which order is defined in the SettingsData.xml file located in the Resources directory below the PPB installation directory. Since this file is a system file that is overwritten when the application is updated to the version included in the distribution, changes to the settings defined in this file are neither recommended nor supported.
To enable individual settings to be displayed in the PPB options that are not normally displayed, follow these steps:
- Create a new file named Custom.SettingsData.xml in the Resources subdirectory of the PPB installation directory and open it with your favorite XML editor.
- Insert the following (sample) XML code:
<?xml version="1.0" encoding="utf-8"?>
<SettingsData>
<PropertyData>
<Property Name="NewPackagesInstalledAppsRegistryKey" VisibleIf="True"> <!-- overriding default -->
</Property>
<Property Name="NewPackagesDefaultProperties" VisibleIf="True"> <!-- overriding default -->
</Property>
</PropertyData>
</SettingsData>
In the example above, the "Installed Apps Registry key for new packages" and "Properties for new packages" settings, which are normally hidden (the default value of the "VisibleIf" property in the SettingsData.xml is "False"), are made visible and thus accessible for direct configuration via the GUI.
- You can customize the properties that are displayed, their display name and display status, as well as properties such as section and display order. In particular, the value of the "Name" property of the property must match the name of the setting in PackagingPowerBench.exe.config..
- Save the XML file and restart the Packaging PowerBench. If you now switch to the settings via "File > Options", you will see the changes compared to the default view.
Note: When you make changes to the values of the configuration settings, they are, as always, stored in a user-specific configuration file and therefore only apply to the user who made the change. If you want to make a change for all users of the computer, make the change directly in the PackagingPowerBench.exe.config configuration file. |