CBaseDispatch 类

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

cbasedispatch 类层次结构

CBaseDispatch 类是在 DirectShow 筛选器中实现 IDispatch 接口的基类。

此类仅限于支持 DirectShow 类型库 QuartzTypeLib 导出的与自动化兼容的接口。 例如, CMediaControlCMediaPosition 类分别使用 CBaseDispatch 实现 IMediaControlIMediaPosition。 由于此限制,可能没有理由直接在自己的筛选器中使用 CBaseDispatch

若要使用此类,请执行以下操作:

  • 声明支持 IDispatch 的新类。
  • 为新类提供 CBaseDispatch 类型的私有成员变量。
  • 实现 IDispatch 方法。
  • IDispatch 方法中,调用 CBaseDispatch 方法。

有关更多详细信息,请参阅 Ctlutil.h 中声明的任何示例类的源代码。

公共方法 说明
CBaseDispatch 构造函数方法。
~CBaseDispatch 析构函数方法。
GetIDsOfNames 将一组名称映射到一组相应的 DISPID。
GetTypeInfo 检索 对象的类型信息,然后可用于获取接口的类型信息。
GetTypeInfoCount 检索对象提供的类型信息接口的数目。

要求

要求
标头
Ctlutil.h (包括 Streams.h)

Strmbase.lib (零售版本) ;
Strmbasd.lib (调试生成)

另请参阅

DirectShow 基类