CBasePin.CheckConnect 方法
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
方法 CheckConnect
确定引脚连接是否合适。
语法
virtual HRESULT CheckConnect(
IPin *pPin
);
参数
-
pPin
-
指向另一个引脚的 IPin 接口的指针。
返回值
返回下表中显示的 HRESULT 值之一。
返回代码 | 说明 |
---|---|
|
成功。 |
|
固定方向不兼容。 |
备注
在连接过程开始时,在两个引脚上调用此方法。 连接引脚从 CBasePin::Connect 方法中调用它,接收引脚从 CBasePin::ReceiveConnection 方法中调用它。
使用此方法可确定 pPin 参数指定的引脚是否适合连接。 如果两个引脚 (两个输入方向相同,或者两个输出) ,则基类将返回错误。 派生类可以重写此方法,以验证引脚中的其他特征。 例如, CBaseOutputPin 类查询其 IMemInputPin 接口的输入引脚。
如果此方法失败,则连接失败,引脚调用 CBasePin::BreakConnect 方法。 使用 BreakConnect 释放在 中 CheckConnect
获取的任何资源。 例如,如果 CheckConnect
调用 QueryInterface 方法, BreakConnect 必须释放接口。
要求
要求 | 值 |
---|---|
标头 |
|
库 |
|