IMFSourceResolver::BeginCreateObjectFromURL 方法 (mfidl.h)

开始异步请求,以从 URL 创建媒体源或字节流。

语法

HRESULT BeginCreateObjectFromURL(
  [in]  LPCWSTR          pwszURL,
  [in]  DWORD            dwFlags,
  [in]  IPropertyStore   *pProps,
  [out] IUnknown         **ppIUnknownCancelCookie,
  [in]  IMFAsyncCallback *pCallback,
  [in]  IUnknown         *punkState
);

参数

[in] pwszURL

包含要解析的 URL 的 Null 终止字符串。

[in] dwFlags

按位或标志。 请参阅 源解析程序标志

[in] pProps

指向属性存储的 IPropertyStore 接口的指针。 该方法将属性存储传递给创建对象的方案处理程序或字节流处理程序。 处理程序可以使用属性存储来配置对象。 此参数可以为 NULL。 有关详细信息,请参阅 配置媒体源

[out] ppIUnknownCancelCookie

接收 IUnknown 指针或值 NULL。 如果值不 为 NULL,可以通过将此指针传递给 IMFSourceResolver::CancelObjectCreation 方法来取消异步操作。 调用方必须释放接口。 此参数可以为 NULL。

[in] pCallback

指向回调对象的 IMFAsyncCallback 接口的指针。 调用方必须实现此接口。

[in] punkState

指向由调用方定义的状态对象的 IUnknown 接口的指针。 此参数可以为 NULL。 可以使用此对象来保存状态信息。 调用回调时,对象将返回到调用方。

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码 说明
S_OK
方法成功。
MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS
dwFlags 参数包含互斥标志。
MF_E_UNSUPPORTED_SCHEME
不支持 URL 方案。

注解

dwFlags 参数必须包含MF_RESOLUTION_MEDIASOURCE标志或MF_RESOLUTION_BYTESTREAM标志,但不应同时包含这两个标志。

对于本地文件,可以在 pwszURL 参数中传递文件名; file: 不需要方案。

操作完成后,源解析程序调用 IMFAsyncCallback::Invoke 方法。 Invoke 方法应调用 IMFSourceResolver::EndCreateObjectFromURL 以获取指向所创建对象的指针。

pProps 参数的使用取决于媒体源的实现。

要求

   
最低受支持的客户端 Windows Vista [桌面应用|UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用|UWP 应用]
目标平台 Windows
标头 mfidl.h
Library Mfuuid.lib

请参阅

IMFSourceResolver

源解析程序