KsFilterFactoryUpdateCacheData 函数 (ks.h)

KsFilterFactoryUpdateCacheData 函数更新 FilterData 注册表项和中等缓存 (给定筛选器工厂的一组注册表项) 。

语法

KSDDKAPI NTSTATUS KsFilterFactoryUpdateCacheData(
  [in]           PKSFILTERFACTORY          FilterFactory,
  [in, optional] const KSFILTER_DESCRIPTOR *FilterDescriptor
);

参数

[in] FilterFactory

要更新注册表中 FilterData 和 Medium 缓存的 KSFILTERFACTORY

[in, optional] FilterDescriptor

将更新其 FilterData 键和中缓存的可选 KSFILTER_DESCRIPTOR 。 如果 为 NULL,则改用 FilterFactory 的描述符。 如果筛选器工厂使用动态引脚,并且需要更新尚未实例化引脚的信息,请提供 。

返回值

KsFilterFactoryUpdateCacheData 返回STATUS_SUCCESS或失败代码,指示是否已成功更新相关注册表信息。 如果未找到与筛选器描述符中传递的类别相对应的设备接口,则返回STATUS_INVALID_PARAMETER。

注解

此函数更新 FilterDescriptor 中指定的所有类别的 FilterData 键和中等缓存。 如果 FilterDescriptorNULL,则 FilterFactory 的 KSFILTER_DESCRIPTOR 成员中指定的所有类别都会更新 FilterData 和 Medium 缓存。

KsRegisterFilterWithNoKSPins 提供类似的功能,但如果同一 KSDEVICE 下的两个KSFILTER_DESCRIPTOR实例在同一类别中注册,并且仅在引用 GUID 上不同,则不应使用 KsRegisterFilterWithNoKSPins。 在这种情况下, KsRegisterFilterWithNoKSPins 仅更新第一个的数据,即使已指定第二个数据。

对于没有 KS 引脚的筛选器(例如模拟样式交叉条),请勿使用此例程来代替 KsRegisterFilterWithNoKSPins 。 仅将此例程用于微型驱动程序为其传递相应筛选器工厂的特定筛选器。

此外, KsRegisterFilterWithNoKSPins 仅允许每个已注册的引脚一个介质。 对于 BDA 微型驱动程序来说,这可能不够。

有关详细信息,请参阅 AVStream 对象层次结构

KsFilterFactoryUpdateCacheData 函数只能在PASSIVE_LEVEL中调用。

要求

要求
目标平台 通用
标头 ks.h (包括 Ks.h)
Library Ks.lib

另请参阅

KSFILTERFACTORY

KSFILTER_DESCRIPTOR

KsRegisterFilterWithNoKSPins