CSharedFile

CSharedFile это CMemFile-производный класс, поддерживающий общих файлов памяти. Памяти файлы ведут себя как дисковых файлов, за исключением того, что файл хранится в ОЗУ, а не на диске. Файл памяти используется для быстрого временного хранения или передачи байт или сериализации объектов между независимыми процессами.

Общей памяти файлы отличаются от других файлов памяти выделяется память для них с функции GlobalAlloc Windows. CSharedFile класс хранит данные в блоке глобально выделенной памяти (созданное с помощью GlobalAlloc), и этот блок памяти может совместно использоваться с помощью DDE, в буфер обмена или другие OLE/COM единообразных данных операций передачи, например, с помощью IDataObject.

GlobalAlloc возвращает HGLOBAL обрабатывать а не указатель на область памяти, такие как указатель, возвращенный malloc. HGLOBAL ручка необходима в некоторых приложениях. Например чтобы поместить данные в буфер обмена необходимо дескриптора HGLOBAL.

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

CSharedFile объекты могут автоматически распределять свои собственные памяти или ваш собственный блок памяти можно прикрепить к CSharedFile объекта путем вызова CSharedFile::SetHandle. В любом случае, выделяется память для выращивания в памяти файл автоматически в nGrowBytes-размера надбавки, если nGrowBytes не равно нулю.

Для получения дополнительных сведений см. статью файлов в MFC в Visual C++ программист руководство и Обработка файлов в Справочник по библиотеке времени выполнения.

# include lt;afxadv.h>

Члены классаБазовый класс | Иерархическая схема

См. также CMemFile, GlobalAlloc, GlobalFree, GlobalRealloc

Index