Метод 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 |
Header | objidl.h |
Библиотека | Uuid.lib |
DLL | Ole32.dll |
См. также раздел
ILockBytes — реализация File-Based