PowerShell Studio adds PowerShell 7 support

We are proud to announce the addition of PowerShell 7 support with the latest release of PowerShell Studio (5.7.175). This release also includes new script engines for packaging scripts, cache support, debugging capabilities, and updates to our Windows Forms designer.

SAPIEN Script Packager

A whole new lineup of 32 and 64-bit script engines have been added to our SAPIEN Script Packager:

  • SAPIEN PowerShell Core Host (Command Line)
  • SAPIEN PowerShell Core Host (Windows Applications)
  • SAPIEN PowerShell Core Host (Windows Forms)
  • SAPIEN PowerShell Core Host (Windows Tray App)
  • SAPIEN PowerShell Core Host Dark Mode (Windows Application)

These script engines will use the latest PowerShell 7 version installed on your machine.

Running and Debugging

Along with the obvious feature to run scripts in PowerShell 7, we have also added the ability to debug. Debugging is crucial for finding those pesky bugs or undesired behavior in your scripts:

This build also includes a new RSEE (Remote Script Execution Engine) build for running PowerShell 7 scripts remotely. The RSEE service uses a configurable TCP/IP port to listen for incoming script execution requests from a PowerShell Studio or PrimalScript instance.

All RSEE endpoints must be updated with this new RSEE version. Older versions of PowerShell Studio or PrimalScript can use the included new version of the RSEE Service.

Cache Editor

Along with a stylish new dark mode, we have added PowerShell 7 cache support. This can be added by selecting <Add new PowerShell Version> from the cache drop-down menu:

Windows Forms Designer

We have made updates to our Windows Forms designer to work with both PowerShell 7 and Windows PowerShell. For people that are using previous builds of PowerShell Studio, their forms may have errors like the following:

These type of errors have caused all controls added to a form to appear bunched up in the top-left corner, colorless and unusable. In PowerShell Studio release 5.7.175, we have changed the generated code to address these issues. For example, code generated from the designer in previous builds looked like this:

$textbox1.BackColor = 'ControlDarkDark'
$textbox1.ForeColor = 'Window'
$textbox1.Location = '70, 27'
$textbox1.Name = 'textbox1'
$textbox1.Size = '189, 20'
$textbox1.TabIndex = 3
$textbox1.Text = 'Test'

Code generated has been updated like this:

$textbox1.BackColor = [System.Drawing.SystemColors]::ControlDarkDark 
$textbox1.ForeColor = [System.Drawing.SystemColors]::Window 
$textbox1.Location = New-Object System.Drawing.Point(70, 27)
$textbox1.Name = 'textbox1'
$textbox1.Size = New-Object System.Drawing.Size(189, 20)
$textbox1.TabIndex = 3
$textbox1.Text = 'Test'

The updates resolve the undesirable, colorless control-bunching behavior:

As PowerShell 7 is still new, we have discovered multiple issues that have yet to be resolved and may not be resolved until the releases of PowerShell 7.1 and .Net 5. These issues can affect a multitude of features, including PowerShell Studio’s designer, templates and code snippets. All known PowerShell issues can be found at the following link: https://github.com/powershell/powershell/issues

As we discover more problems in regards to Windows Forms with PowerShell 7, we will do our best to address bugs and provide workarounds when available. Unfortunately, there will be issues that cannot be fixed from our side and we ask for your patience as we wait for resolutions to be released.

Requirements

PowerShell 7 will need to be installed before utilizing the functionality mentioned above. It is important to note that with the added PowerShell 7 support comes the requirement to also have .Net Core Desktop 3.1 installed. This has been included with the installer for PowerShell Studio and PrimalScript.

Feedback

Please continue providing your feedback. Many of the new features included in the service builds are suggestions from users like you. Submit your suggestions or feature requests on the Wish List and Feature Requests forum, Feedback forum or the Feature Requests page.