ILockBytes::ReadAt 方法 (objidl.h)
ReadAt 方法从字节数组对象开头的指定偏移量开始读取指定数量的字节。
语法
HRESULT ReadAt(
[in] ULARGE_INTEGER ulOffset,
[in] void *pv,
[in] ULONG cb,
[out] ULONG *pcbRead
);
参数
[in] ulOffset
指定用于读取数据的字节数组开头的起点。
[in] pv
指向读取字节数组的缓冲区的指针。 此缓冲区的大小包含在 cb 中。
[in] cb
指定要尝试从字节数组读取的数据字节数。
[out] pcbRead
指向 ULONG 的指针,此方法在其中写入从字节数组读取的实际字节数。 可以将此指针设置为 NULL ,以指示你对此值不感兴趣。 在这种情况下,此方法不提供已读取的实际字节数。
返回值
此方法可以返回其中一个值。
返回代码 | 说明 |
---|---|
S_OK | 指示读取了指定的字节数,或读取到字节数组末尾的最大字节数。 |
E_FAIL | 无法从字节数组读取数据。 |
E_PENDING | 仅限异步存储:要读取的部分或全部数据当前不可用。 |
STG_E_ACCESSDENIED | 调用方无权访问字节数组。 |
STG_E_READFAULT | 要读取的字节数不等于实际读取的字节数。 |
注解
ILockBytes::ReadAt 从字节数组对象读取字节。 它报告实际读取的字节数。 如果发生错误或在读取期间到达字节数组的末尾,则此值可能小于请求的字节数。
如果操作遇到字节数组的末尾,读取的字节数小于指定的字节数不会出错。 请注意,这与 MS-DOS 文件分配表 (FAT) 文件系统文件中找到的文件结尾行为相同。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 专业版 [桌面应用 |UWP 应用] |
最低受支持的服务器 | Windows 2000 Server [桌面应用 |UWP 应用] |
目标平台 | Windows |
标头 | objidl.h |
Library | Uuid.lib |
DLL | Ole32.dll |