IPortableDeviceResources::GetStream 方法 (portabledeviceapi.h)
GetStream 方法获取 IStream 接口,用于读取或写入设备上的 对象中的内容数据。 检索到的接口使你能够读取或写入对象数据。
语法
HRESULT GetStream(
[in] LPCWSTR pszObjectID,
[in] REFPROPERTYKEY Key,
[in] const DWORD dwMode,
[in, out] DWORD *pdwOptimalBufferSize,
[out] IStream **ppStream
);
参数
[in] pszObjectID
指向以 null 结尾的字符串的指针,该字符串包含对象的对象 ID。
[in] Key
一个 REFPROPERTYKEY ,指定要读取的资源。 可以通过调用 GetSupportedResources 来检索对象的所有资源的键。
[in] dwMode
以下访问模式之一:
- STGM_READ (只读 access.)
- STGM_WRITE (只写访问。)
- STGM_READWRITE (读/写 access.)
[in, out] pdwOptimalBufferSize
指向 DWORD 的可选指针,指定在使用 ppStream 读取或写入数据时要使用的最佳缓冲区大小的估计值。 需要驱动程序才能支持此值。
[out] ppStream
指向 IStream 接口指针的指针。 此接口用于将数据读取和写入对象。 调用方在使用完此接口后必须释放此接口。
返回值
该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
至少一个必需的指针参数为 NULL。 |
注解
检索的流无法以递归方式读取文件夹的内容。 若要复制对象中的所有资源,请为 Key 指定WPD_RESOURCE_DEFAULT。
如果对象不支持资源,此方法将返回错误, ppStream 将为 NULL。
为读取或写入操作分配缓冲区时,应用程序应使用 pdwOptimalBufferSize 返回的缓冲区大小。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | portabledeviceapi.h |
Library | PortableDeviceGUIDs.lib |