在GraphStudio中,当连接两个过滤器但尚未连接时,这是什么意思

What does it mean when in graphstudio there is no error when connection two filter but they have not been connected

本文关键字:连接 意思 是什么 过滤器 GraphStudio 两个      更新时间:2023-10-16

当我尝试连接不匹配的GraphStudio中的两个过滤器时,我通常会得到错误代码。但是,在我的情况下,如果我尝试将过滤器连接到另一个过滤器,则没有错误消息或有连接,例如过滤器之间没有箭头。

这是过滤器根据文档进行连接的方式

连接过程的一般轮廓如下:

  1. 过滤器图管理器调用ipin ::连接输出引脚上的连接,将指针传递给输入引脚。

  2. 如果输出引脚接受连接,则在输入引脚上调用IPIN ::接收器。

  3. 如果输入引脚也接受连接,则连接尝试成功并连接了引脚。

使用Visual Studio我可以确保接收到返回S_OK

因此,这三个步骤必须有更多的东西,否则它应该起作用

引脚连接基本上是一个IGraphBuilder::Connect调用,在相关过滤器上,内部呼叫IPin::ConnectIPin::ReceiveConnection。如果内部呼叫成功,呼叫将成功。

稍后,GraphStudio列举了引脚并检查这些引脚上的引脚连接。如果引脚没有报告任何连接的内容,则GraphStudio显示断开连接。

考虑到您先前关于覆盖Connect方法的问题,我想您将它们拒绝了:您没有在过滤器/PIN上进行连接,仍然将成功代码返回为操作状态。