IRenderEngine::SetSourceNameValidation 方法

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

注意

[已弃用。 此 API 可能会从 Windows 的未来版本中删除。]

 

SetSourceNameValidation方法指定呈现引擎如何验证文件名。

语法

HRESULT SetSourceNameValidation(
   BSTR          FilterString,
   IMediaLocator *pOverride,
   LONG          Flags
);

参数

FilterString

包含筛选器字符串对的 BSTR 值,按照 OPENFILENAME 结构的 lpstrFilter 成员的要求设置格式。 如果媒体定位器向最终用户显示“打开文件”对话框,则使用此筛选器。

pOverride

指向媒体定位符的 IMediaLocator 接口的可选指针,用于代替默认值。 若要使用默认媒体定位符,请将此参数的值设置为 NULL。 有关更多信息,请参见备注。

标志

指定媒体定位符行为的 文件名验证标志 的按位组合。 SFN_VALIDATEF_CHECK标志必须存在。 SFN_VALIDATEF_hlinkMUTED标志对此方法不起作用。

返回值

返回以下 HRESULT 值之一:

返回代码 说明
S_OK
成功。
E_MUST_INIT_RENDERER
呈现引擎初始化失败。

 

备注

使用 pOverride 参数,可以提供自己的 IMediaLocator 接口的自定义实现。 例如,默认媒体定位器不会通知应用程序有关它找到的文件 (或找不到) 。 若要绕过此限制,可以实现自定义媒体定位符,使其成为默认版本的包装器。 然后将 IMediaLocator::FindMediaFile 调用直接传递到默认版本并检查返回值。

目前,此方法不验证动态加载的源。 请参阅 IRenderEngine::SetDynamicReconnectLevel

注意

头文件 Qedit.h 与版本 7 之后的 Direct3D 标头不兼容。

 

注意

若要获取 Qedit.h,请下载适用于 Windows Vista 和 .NET Framework 3.0 的Microsoft Windows SDK更新。 Qedit.h 在 Windows 7 和 .NET Framework 3.5 Service Pack 1 的Microsoft Windows SDK中不可用。

 

要求

要求
标头
Qedit.h

Strmiids.lib

另请参阅

IRenderEngine 接口

错误和成功代码