次の方法で共有


IMFMediaEventGenerator::GetEvent メソッド (mfobjects.h)

キュー内の次のイベントを取得します。 このメソッドは同期的です。

構文

HRESULT GetEvent(
  [in]  DWORD         dwFlags,
  [out] IMFMediaEvent **ppEvent
);

パラメーター

[in] dwFlags

次のいずれかの値を指定します。

意味
0
メソッドは、イベント ジェネレーターがイベントをキューに入れるまでブロックします。
MF_EVENT_FLAG_NO_WAIT
メソッドは直ちにを返します。

[out] ppEvent

IMFMediaEvent インターフェイスへのポインターを受け取ります。 呼び出し元はインターフェイスを解放する必要があります。

戻り値

このメソッドは HRESULT を返します。 有効な値を次の表に示しますが、これ以外にもあります。

リターン コード 説明
S_OK
メソッドが成功しました。
E_INVALIDARG
NULL ポインター引数。
MF_E_MULTIPLE_SUBSCRIBERS
保留中の要求があります。
MF_E_NO_EVENTS_AVAILABLE
キューにイベントはありません。
MF_E_SHUTDOWN
オブジェクトがシャットダウンされました。

注釈

このメソッドは同期的に実行されます。

キューにイベントが既に含まれている場合、メソッドはすぐにS_OKを返します。 キューにイベントが含まれていない場合、動作は dwFlags の値によって異なります。

  • dwFlags が 0 の場合、新しいイベントがキューに登録されるまで、またはイベント ジェネレーターがシャットダウンされるまで、メソッドは無期限にブロックします。
  • dwFlags がMF_EVENT_FLAG_NO_WAITされている場合、メソッドはリターン コード MF_E_NO_EVENTS_AVAILABLEですぐに失敗します。
このメソッドは、以前に IMFMediaEventGenerator::BeginGetEvent を呼び出し、まだ IMFMediaEventGenerator::EndGetEvent を呼び出していない場合に、MF_E_MULTIPLE_SUBSCRIBERSを返します。

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー mfobjects.h (Mfidl.h を含む)
Library Mfuuid.lib

こちらもご覧ください

IMFMediaEventGenerator

メディア イベント ジェネレーター