IDXGIOutputDuplication::AcquireNextFrame メソッド (dxgi1_2.h)
アプリケーションが次のデスクトップ イメージを処理する準備ができていることを示します。
構文
HRESULT AcquireNextFrame(
[in] UINT TimeoutInMilliseconds,
[out] DXGI_OUTDUPL_FRAME_INFO *pFrameInfo,
[out] IDXGIResource **ppDesktopResource
);
パラメーター
[in] TimeoutInMilliseconds
タイムアウト間隔 (ミリ秒単位)。 この間隔は、このメソッドが呼び出し元に戻るまでに新しいフレームを待機する時間を指定します。 このメソッドは、間隔が経過し、新しいデスクトップ イメージが使用できない場合に を返します。
タイムアウト間隔の詳細については、「解説」を参照してください。
[out] pFrameInfo
フレームのタイミングとプレゼンテーションの統計情報を記述する DXGI_OUTDUPL_FRAME_INFO 構造体を受け取るメモリ位置へのポインター。
[out] ppDesktopResource
デスクトップ ビットマップを含むサーフェスの IDXGIResource インターフェイスを受け取る変数へのポインター。
戻り値
AcquireNextFrame は 次を返します。
- 次のデスクトップ イメージが正常に受信された場合にS_OKします。
- デスクトップ重複インターフェイスが無効な場合にDXGI_ERROR_ACCESS_LOSTします。 デスクトップの複製インターフェイスは、通常、別の種類のイメージがデスクトップに表示されると無効になります。 この状況の例を次に示します。
- デスクトップ スイッチ
- モードの変更
- DWM オン、DWM オフ、またはその他の全画面表示アプリケーションから切り替える
- 次のデスクトップ フレームが使用可能になるまでにタイムアウト間隔が経過した場合にDXGI_ERROR_WAIT_TIMEOUTします。
- アプリケーションが前のフレームを解放せずに AcquireNextFrame を呼び出した場合にDXGI_ERROR_INVALID_CALLします。
- AcquireNextFrame のパラメーターの 1 つが正しくない場合にE_INVALIDARGします。たとえば、pFrameInfo が NULL の場合です。
- 場合によっては、 DXGI_ERROR トピックで説明されているその他のエラー コード。
注釈
AcquireNextFrame が正常に返されると、呼び出し元のアプリケーションは、AcquireNextFrame が ppDesktopResource の変数で返すデスクトップ イメージにアクセスできます。 呼び出し元が TimeoutInMilliseconds パラメーターでタイムアウト間隔を 0 に指定した場合、 AcquireNextFrame は、使用可能な新しいデスクトップ イメージがあるかどうかを確認し、すぐにを返し、戻り値でその結果を示します。 呼び出し元が TimeoutInMilliseconds パラメーターに INFINITE タイムアウト間隔を指定した場合、タイムアウト間隔は経過しません。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2012 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | dxgi1_2.h |
Library | Dxgi.lib |