CMediaControl 类
[与此页面关联的功能 DirectShow 是旧版功能。 它已被 MediaPlayer、 IMFMediaEngine 和 Media Foundation 中的音频/视频捕获所取代。 这些功能已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能在 Media Foundation 中使用 MediaPlayer、 IMFMediaEngine 和 音频/视频捕获 ,而不是 DirectShow。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
类CMediaControl
提供双接口 IMediaControl 的 IDispatch 方法的基类处理。 它将 IMediaControl 接口的属性和方法保留为纯虚拟。
通常,筛选器图管理器是唯一实现 IMediaControl 接口的对象。 (筛选器实现 IMediaFilter 接口(由 IBaseFilter 继承)以接收来自筛选器图管理器的控制命令。) 因此,此类库对筛选器开发人员的用途有限。
CMediaControl::GetIDsOfNames, CMediaControl::GetTypeInfo、CMediaControl::GetTypeInfoCount 和 CMediaControl::Invoke 成员函数是 IDispatch 方法的标准实现,使用 CBaseDispatch 类 (和类型库) 分析命令并将其传递给 IMediaControl 接口的纯虚拟方法。
control.odl 中定义的 IMediaControl 方法保留为纯虚拟方法。
成员函数 | 说明 |
---|---|
CMediaControl | 构造 CMediaControl 对象。 |
IDispatch 方法 | 说明 |
GetIDsOfNames | 将单个成员和一组可选参数映射到一组相应的整数调度标识符 (DISPID) ,这些标识符可在后续调用 CMediaControl::Invoke 方法期间使用。 |
GetTypeInfo | 检索类型信息对象,该对象可以检索接口的类型信息。 |
GetTypeInfoCount | 检索对象提供的类型信息接口数。 |
调用 | 提供对某一对象公开的属性和方法的访问。 |