我需要能夠運行此腳本,並使其最大化窗口,如果它是不是已經最大化。如果不是,則恢復窗口。窗口只是無論是當前的活動所以沒有必要得到具體的(但加分,如果你這樣做)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