![]() |
|
#1
|
||||
|
||||
![]() Уважаемые. Прошу помощи.
Задача в одном процессе записывать TBitmap в MemoryMappedFile, а в другом считывать. Запись делаю так: Код:
Считывание: Код:
Как правильно записать в начало размер, а потом содержимое? Сейчас в переменную pSize считывается какой-то мусор. Размер нужен чтобы потом считать сначала размер, а потом уже содержимое. Может есть другой способ определить размер Mapped файла? И еще вопрос. Как реализовать взаимодействие между процессами так, чтобы небыло одновременно и записи и считывания файла? Последний раз редактировалось xteam777, 31.05.2018 в 18:54. |
#2
|
|||
|
|||
![]() Код работает. Единственное, не получается правильно посчитать смещение в этой строке. Данные битмапа затирают первые 8 байт размера
Код:
|
#3
|
||||
|
||||
![]() Опытным путем установлено, что работает вот так:
Код:
и Код:
Почему надо прибавить 4 байта к смещению непонимаю. |