wgc_start_window

指定ウィンドウのキャプチャを開始

wgc_start_window hwnd, var_handle

hwnd       : キャプチャ対象ウィンドウハンドル (int)
var_handle : セッションハンドルを受け取る整数変数

(プラグイン / モジュール : hspwgcapture.dll)

解説

GraphicsCaptureItem::CreateForWindow で指定 HWND のキャプチャ
セッションを作成し、Direct3D11CaptureFramePool を CreateFreeThreaded
で生成したのち、GraphicsCaptureSession::StartCapture() を呼びます。

var_handle に 0 以上の内部セッションスロット番号が格納されます。
                -1 = 失敗 / -2 = 無効な HWND。

同時に最大 4 セッションを保持できます。

関連項目

wgc_start_monitor指定モニタ全体のキャプチャを開始(hspwgcapture.dll)
wgc_stopキャプチャ停止(hspwgcapture.dll)
wgc_grab_frame最新フレームを BGRA バイト列で取得(hspwgcapture.dll)

情報

プラグイン / モジュールhspwgcapture.dll
バージョン1.0
作成日2026-04-15
著作者IronHSP / hspwgcapture
URLhttps://github.com/inovia/IronHSP
備考hspwgcapture.dll は Windows 10 1903 (19H1) 以降に搭載された
Windows.Graphics.Capture API (WinRT) を HSP3 から直接呼び出す
ためのプラグインです。

Windows.Graphics.Capture API はモダンな DWM 連携キャプチャを
提供し、従来の BitBlt / PrintWindow よりも高フレームレートで
GPU 上のウィンドウ / モニタ内容を取得できます。ハードウェア
アクセラレートされた D3D11 テクスチャ経由でピクセルが渡される
ため、全画面ゲームやハードウェア合成されたウィンドウでも正しく
キャプチャできます。

実装は C++/WinRT + D3D11 + WIC で、非同期 API は使用していま
せん (Direct3D11CaptureFramePool::CreateFreeThreaded の同期
ポーリング型)。HSP 側からは通常の同期命令として扱えます。

注意: Windows.Graphics.Capture を利用すると、対象ウィンドウ
に黄色の「キャプチャ中」ハイライト枠が表示されるのが既定動作
です (Windows 11 以降は設定で無効化可能)。
タイプ拡張命令
グループhspwgcapture ― キャプチャ
対応環境
  • その他 : Win32 / Win64 (Windows 10 1903 以降)
hs ファイルhsphelp\hspwgcapture.hs