我需要能够运行此脚本,并使其最大化窗口,如果它是不是已经最大化。如果不是,则恢复窗口。窗口只是无论是当前的活动所以没有必要得到具体的(但加分,如果你这样做)80)如何使用powershell脚本控制窗口的“状态”(最大化,最小化,还原)?
我打算从快捷按键激活它。
它确实需要在PS V1运行(我知道,我知道,但我没有过的版本在工作中控制)。
谢谢。
澄清:既然不能更新PS到v2,我也不能安装不同的应用程序。有没有办法使用本机命令来做到这一点?
我需要能够运行此脚本,并使其最大化窗口,如果它是不是已经最大化。如果不是,则恢复窗口。窗口只是无论是当前的活动所以没有必要得到具体的(但加分,如果你这样做)80)如何使用powershell脚本控制窗口的“状态”(最大化,最小化,还原)?
我打算从快捷按键激活它。
它确实需要在PS V1运行(我知道,我知道,但我没有过的版本在工作中控制)。
谢谢。
澄清:既然不能更新PS到v2,我也不能安装不同的应用程序。有没有办法使用本机命令来做到这一点?
集-WindowPosition - 设置上,左,宽度,窗口高度的任何一个(或全部)...或最大化/最小化/恢复
GET-WindowPosition - 获得位置(冗余种-的实际上,因为Window对象有它的位置作为一个属性)
这工作:
(Get-Host).UI.RawUI
$a = (Get-Host).UI.RawUI
$a.BackgroundColor = "white"
$a.ForegroundColor = "black"
$size = (Get-Host).UI.RawUI.WindowSize
$size.Width = 80
$size.Height = 30
(Get-Host).UI.RawUI.WindowSize = $size
但这没有:
$position = (Get-Host).UI.RawUI.Windowposition
$position.X = 0
$position.Y = 30
(Get-Host).UI.RawUI.Windowposition = $position
万一你是你自己做这个或你的工作场所允许开源模块:
我用UIAutomation PowerShell的模块(http://uiautomation.codeplex.com/)。 这里是我的PowerShell脚本移动到另一个监视器(这需要进入正常和最大化模式)的窗口。
Start-Process Chrome
##orient new chrome window in full screen on left monitor
#get reference to new chrome window
$nextWin = Get-UiaWindow -Name "*New Tab*"
#transform window to "restore" mode (make sure window is not maximized)
$nextWin.SetWindowVisualState("Normal")
#move window to left monitor
$nextWin.Move(-1920,0)
#maximize window
$nextWin.SetWindowVisualState("Maximize")
当然这里主要takaways是:
$nextWin.SetWindowVisualState("Normal")
$nextWin.SetWindowVisualState("Maximize")
$nextWin.SetWindowVisualState("Minimize")
而且还有用于获取一个窗口($ nextWin),包括获取-UiaActiveWindow
是的相当多的选择,那是我想起来的第一个想法 - 黄蜂:) – stej 2010-09-28 19:20:17