次の方法で共有


CCmdQueue.New メソッド

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

メソッドは New 、実行するコマンドを初期化し、新しい CDeferredCommand オブジェクトを 返します。

構文

virtual HRESULT New(
   CDeferredCommand **ppCmd,
   LPUNKNOWN        pUnk,
   REFTIME          time,
   GUID             *iid,
   long             dispidMethod,
   short            wFlags,
   long             cArgs,
   VARIANT          *pDispParams,
   VARIANT          *pvarResult,
   short            *puArgErr,
   BOOL             bStream
);

パラメーター

ppCmd

CDeferredCommand オブジェクトへのポインターのアドレス。アプリケーションがコマンドをキャンセルしたり、新しいプレゼンテーション時間を設定したり、見積もり情報を取得したりできます。

pUnk

コマンドを実行するオブジェクトへのポインター。

time

キューに登録されたコマンドを実行する時刻。

iid

呼び出すインターフェイスのグローバル一意識別子 (GUID) へのポインター。

dispidMethod

呼び出されるインターフェイスの メソッド。

wFlags

呼び出しのコンテキストを記述するフラグ。 このパラメーターは、 IDispatch::Invoke メソッドと同じフラグをサポートします。

cArgs

渡された引数の数。

pDispParams

ディスパッチ パラメーターに関連付けられているバリアント型のリストへのポインター。

pvarResult

結果が返されるリストへのポインター (存在する場合)。

puArgErr

最後のエラーが発生した pDispParams パラメーター リスト内のインデックスへのポインター。

bStream

time パラメーターがストリーム時間値 (TRUE) かプレゼンテーション時間値 (FALSE) かを示す値。

戻り値

成功した場合は、S_OKを返します。 値が NULL の新しい CDeferredCommand オブジェクトの作成から ppCmd が返された場合は、E_OUTOFMEMORYを返します。 それ以外の場合は、新しい CDeferredCommand オブジェクトを作成しようとしたときに発生したエラーを示す HRESULT を返します。 エラーが発生した場合、オブジェクトはキューに登録されていません。

解説

新しい CDeferredCommand オブジェクトは パラメーターで初期化され、構築中にキューに追加されます。 このメソッドは、 IDispatch::Invoke メソッドに似ています。

wFlags パラメーターの値は次のとおりです。

説明
DISPATCH_METHOD メンバーはメソッドとして実行されています。 プロパティの名前が同じ場合は、this フラグと DISPATCH_PROPERTYGET フラグの両方を設定できます。
DISPATCH_PROPERTYGET メンバーは、プロパティまたはデータ メンバーとして取得されています。
DISPATCH_PROPERTYPUT メンバーは、プロパティまたはデータ メンバーとして変更されています。
DISPATCH_PROPERTYPUTREF メンバーは、値の割り当てではなく、参照割り当てによって変更されています。 この値は、 プロパティがオブジェクトへの参照を受け入れる場合にのみ有効です。

要件

要件
ヘッダー
Winutil.h (Streams.h を含む)
ライブラリ
Strmbase.lib (製品版ビルド);
Strmbasd.lib (デバッグ ビルド)

関連項目

CCmdQueue クラス