私はパワーシェルでuiテストを実行しています。クラスにpowershellを取得している、そして、UIテスト中に、ウィンドウのスクリーンショットを取る
私はこれが代替印刷SCRN
% {PrtScキー}
で行うことができますが、それが唯一のアクティブなのJPGを取るだけでIEのウィンドウのスクリーンショットを撮りたいエラーを取得します窓。
私はこの
$ H =(ゲット・プロセスをIEXPLORE).MainWindowHandle SetForegroundWindow((ゲット・プロセスを-name IEXPLORE).MainWindowHandle) 睡眠-sec 2 $ H =(ゲット・プロセスを-id $をtryied pid).MainWindowHandle
また、エラーを特定する方法の助けを借りていただければ幸いです。
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ウィンドウを "現在の"ウィンドウにする方法があれば –