IFilterMapper2::RegisterFilter メソッド (strmif.h)
[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、および Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
メソッドは RegisterFilter
、レジストリにフィルター情報を追加します。
構文
HRESULT RegisterFilter(
[in] REFCLSID clsidFilter,
[in] LPCWSTR Name,
[in, out] IMoniker **ppMoniker,
[in] const CLSID *pclsidCategory,
[in] LPCOLESTR szInstance,
[in] const REGFILTER2 *prf2
);
パラメーター
[in] clsidFilter
フィルターのクラス識別子 (CLSID)。
[in] Name
フィルターのわかりやすい名前。
[in, out] ppMoniker
このフィルターのデータの書き込み先を決定するデバイス モニカーへのポインターのアドレス。 NULL を指定できます。
[in] pclsidCategory
フィルターのフィルター カテゴリへのポインター。 NULL の場合、既定のカテゴリはCLSID_ActiveMovieFilters。 ( 「フィルター カテゴリ」を参照してください)。
[in] szInstance
デバイス モニカーの表示名を構築するためのインスタンス データ。 フレンドリ名、またはフィルター CLSID の文字列表現を指定できます。 NULL の場合、既定値はフィルター CLSID です。
[in] prf2
フィルター情報を含む REGFILTER2 構造体へのポインター。
戻り値
HRESULT 値を返します。 次の表に示す値を指定できます。
リターン コード | 説明 |
---|---|
|
正常終了しました。 |
|
レジストリ キーを取得できませんでした。 |
注釈
このメソッドは、指定したフィルター カテゴリのレジストリ エントリの下に、レジストリにフィルターに関する情報を追加します。 フィルターを作成するインプロセス サーバー (通常は DLL) は登録されません。 サーバーを登録するには、 AMovieDllRegisterServer2 関数を呼び出します。
ppMoniker パラメーターには、次のいずれかを使用します。
- 既存のデバイス モニカーの IMoniker インターフェイス ポインターのアドレス
- NULLIMoniker インターフェイス ポインターのアドレス
- NULL
それ以外の場合、 メソッドは新しいモニカーを作成します。 ppMoniker が NULL 以外の場合、メソッドは新しいモニカーを指す *ppMoniker を設定します。 アプリケーションでは、このモニカーを使用して、プロパティ バッグに追加のプライベート値を書き込むことができます。 必ず インターフェイスを解放してください。
モニカーを指定または受信しない場合は、 ppMoniker を NULL に設定します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | strmif.h (Dshow.h を含む) |
Library | Strmiids.lib |