IGraphConfig::SetFilterFlags 方法 (strmif.h)

[与此页面关联的功能 DirectShow 是一项旧功能。 它已被 MediaPlayerIMFMediaEngine媒体基金会中的音频/视频捕获取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用 MediaPlayerIMFMediaEngineMedia Foundation 中的音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

方法 SetFilterFlags 设置筛选器的配置信息。

语法

HRESULT SetFilterFlags(
  [in] IBaseFilter *pFilter,
  [in] DWORD       dwFlags
);

参数

[in] pFilter

指向筛选器图中筛选器的 IBaseFilter 接口的指针。

[in] dwFlags

指定新配置标志的值。 必须是以下值之一。

说明
零个 未设置标志。
AM_FILTER_FLAGS_REMOVABLE 在动态重新连接期间,筛选器是可移动的。 有关详细信息,请参阅“备注”。

返回值

返回以下 HRESULT 值之一。

返回代码 说明
E_POINTER
NULL 指针参数。
E_INVALIDARG
无效的参数。
S_OK
成功。
VFW_E_NOT_IN_GRAPH
筛选器不在图中。

注解

AM_FILTER_FLAGS_REMOVABLE 标志更改 IGraphConfig::Reconnect 方法的行为。 Reconnect 方法在两个引脚之间执行动态重新连接。 如果调用方指定了一个引脚,但未指定另一个引脚,则重新连接搜索上游或从指定引脚下游查找合适的匹配项。 但是,默认情况下,如果搜索到达通过 IFilterGraph::AddFilter 方法添加到图形中的筛选器,则搜索会失败。 若要替代此行为,请在筛选器上调用 SetFilterFlags 并设置AM_FILTER_FLAGS_REMOVABLE标志。

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 strmif.h (包括 Dshow.h)
Library Strmiids.lib

另请参阅

错误和成功代码

IGraphConfig 接口