Поделиться через


ILockBytes — реализация глобальной памяти

Реализация глобальной памяти ILockBytes реализована в объекте массива байтов, лежащем в основе объекта хранилища составных файлов COM, и предназначена для чтения и записи непосредственно в глобальную память.

Назначение

Методы ILockBytes вызываются из реализаций составных файлов IStorage и IStream в объекте хранилища составных файлов, созданном с помощью вызова StgCreateDocfile.

Комментарии

Ниже приведены методы реализации глобальной памяти ILockBytes .

ILockBytes::ReadAt

Считывает блок байтов из указанного смещения в начале массива байтов.

ILockBytes::WriteAt

Записывает блок байтов из указанного смещения в начале массива байтов.

ILockBytes::Flush

В отличие от реализации на основе файлов, вызов этого метода в реализации глобальной памяти не оказывает никакого влияния.

ILockBytes::SetSize

Задает размер массива байтов.

ILockBytes::LockRegion

Эта реализация не поддерживает блокировку, поэтому dwLocksType имеет нулевое значение. Вызывающий объект должен гарантировать, что доступ является допустимым и взаимоисключающим.

ILockBytes::UnlockRegion

Эта реализация не поддерживает блокировку.

ILockBytes::Stat

Предоставленная COM реализация IStorage::Stat вызывает метод ILockBytes::Stat для получения данных об объекте массива байтов. Если для массива байтов нет разумного имени, предоставленный COM-метод ILockBytes::Stat возвращает значение NULL в элементе pwcsName структуры STATSTG .

ILockBytes

IStorage

IStream