IGraphBuilder::Connect
Connect メソッドは、2 つのピンを接続する (必要に応じて中間フィルタを使用)。
構文
HRESULT Connect(
IPin *ppinOut,
IPin *ppinIn
);
パラメータ
ppinOut
[in] 出力ピンの IPin インターフェイスへのポインタ。
ppinIn
[in] 入力ピンの IPin インターフェイスへのポインタ。
戻り値
HRESULT を返す。可能な値は次のとおりである。
値 | 説明 |
S_OK | 成功。 |
VFW_S_PARTIAL_RENDER | 不完全な成功。このピンからのストリームの一部がサポートされていないフォーマットを使っている。 |
E_ABORT | 操作が中止された。 |
E_POINTER | NULL ポインタ引数。 |
VFW_E_CANNOT_CONNECT | 接続を確立する中間フィルタの組み合わせが見つからなかった。 |
VFW_E_NOT_IN_GRAPH | 少なくとも 1 つのフィルタがフィルタ グラフに含まれていない。 |
注意
このメソッドは、2 つのピンを直接接続するか、または必要に応じて中間フィルタを追加して間接的に接続する。このメソッドはまず、直接接続を試みることから開始する。その試みに失敗すると、フィルタ グラフに既に含まれていて、接続されていない入力ピンを持つ任意のフィルタを使おうと試みる (このとき列挙の順序は任意である)。失敗すると、レジストリ内のフィルタをメリットの順に検索しようと試みる。詳細については、「インテリジェント接続」を参照すること。
接続処理では、中間フィルタのピン名が ~ (チルダ) で始まる場合、フィルタ グラフ マネージャはそのフィルタのピンを無視する。詳細については、「PIN_INFO」を参照すること。
参照