· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› Сохранение данных буфере

Посл.отвђт Сообщенiе


Дата: Апр 21, 2004 01:49:18

Во время работы программы требуется поместить данные в буфер. Если я указываю буффер как
buffer db ?
, то при больших размерах данных прога не работает.
Интересно как тогда можно сохранить большой объем данных в буфере (необходимо для дальнейшего сохранения на диске).
Или у меня неправильный подход - может лучше сразу писать данные в файл?


Дата: Апр 21, 2004 01:56:23

Может всё таки
buf db .. dup(?) ;)

А как на счет FileMappings, HeapAlloc,VirtualAlloc,GlobalAlloc и т. д.


Дата: Апр 21, 2004 02:01:12 · Поправил: Asterix

sBuffer db 1024 dup (?)

или

GetProcessHeap/HeapAlloc

или

HeapCreate/HeapAlloc

или

GlobalAlloc


Дата: Апр 21, 2004 02:17:28 · Поправил: Hmmr

sBuffer db 1024 dup (?)
ничего не даст, а если у меня данные будут будут в несколько раз больше чем 1024 байта? Не указывать мне же например:
sBuffer db 134217728 dup (?)

Буду пробовать через апи.


Дата: Апр 21, 2004 03:13:00

1024 - только для примера, размер буфера указывай свой, но конечно для того размера что ты написал этот способ не годится, нужно память выделять через API.


Дата: Апр 21, 2004 07:49:24

Hmmr
Зависит конкретно от данных. Вариантов ф-ций API несколько и на форуме приводились готовые сорцы, например VirtualAlloc


Дата: Апр 22, 2004 01:32:26

Большое спасибо всем за ответы.
С прогой разобрался... (использовал VirtualAlloc).
В следующий раз попытаюсь задавать более конкретные вопросы.
Думаю тему можно закрыть.


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.130