I'm trying to set size of PowerShell window using a PowerShell script. The code I'm using is
$pshost = Get-Host
$psWindow = $pshost.UI.RawUI
$newSize =$psWindow.BufferSize
$newSize.Height = 4000
$newSize.Width = 200
$psWindow.BufferSize = $newSize
$newSize = $psWindow.WindowSize
$newSize.Height = 95
$newSize.Width = 150
$psWindow.WindowSize= $newSize
It works fine in most cases, but sometimes I get the error on certain desktop sizes. For example, I tried with 95 and failed with the error below for my desktop screen size 1440x960.
Exception setting "WindowSize": "Window cannot be taller than 82.
Parameter name: value.Height
Actual value was 95."
At line:1 char:5
+ $psWindow.WindowSize= $newSize
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], SetValueInvocationException
+ FullyQualifiedErrorId : ExceptionWhenSetting
Is there a way I can calculate the maximum window size setting on the machine that it is running the script on and set the size of PowerShell window?
Your were already on the right course.
(Get-Host).UI.RawUI.MaxWindowSize
Or more specifically:
$height = (Get-Host).UI.RawUI.MaxWindowSize.Height
$width = (Get-Host).UI.RawUI.MaxWindowSize.Width