因此,我正在運行與功率外殼的用戶界面測試。獲得PowerShell類,即在一個用戶界面測試截取即ie窗口的屏幕截圖
當我得到了我想要把剛纔的IE窗口的屏幕截圖錯誤這可以通過ALT打印SCRN做
%{PRTSC}
但是隻需要激活的JPG窗口。
我tryied此
$ H =(獲取進程IEXPLORE).MainWindowHandle SetForegroundWindow((GET-過程-name IEXPLORE).MainWindowHandle) 睡眠-sec 2 $ H =(獲取進程-id $ pid).MainWindowHandle
還有一種方式來識別ie錯誤的幫助將非常感謝。
function screenshot
{
param(
[Switch]$OfWindow
)
begin {
Add-Type -AssemblyName System.Drawing
$jpegCodec = [Drawing.Imaging.ImageCodecInfo]::GetImageEncoders() |
Where-Object { $_.FormatDescription -eq "JPEG" }
}
process {
Start-Sleep -Milliseconds 250
if ($OfWindow) {
[Windows.Forms.Sendkeys]::SendWait("%{PrtSc}")
} else {
[Windows.Forms.Sendkeys]::SendWait("{PrtSc}")
}
Start-Sleep -Milliseconds 250
$bitmap = [Windows.Forms.Clipboard]::GetImage()
$ep = New-Object Drawing.Imaging.EncoderParameters
$ep.Param[0] = New-Object Drawing.Imaging.EncoderParameter ([System.Drawing.Imaging.Encoder]::Quality, [long]100)
$screenCapturePathBase = "$pwd\ScreenCapture"
$c = 0
while (Test-Path "${screenCapturePathBase}${c}.jpg") {
$c++}
$bitmap.Save("${screenCapturePathBase}${c}.jpg", $jpegCodec, $ep)
}
}
我希望有一種方法來設定腳本只捕捉IE窗口。如果有辦法使IE窗口成爲可用的「當前」窗口 –