Показать сообщение отдельно
  #3  
Старый 08.04.2013, 07:53
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

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

Спасибо за ответ, посмотрю хиппи.

Тогда еще такой вопрос, LocalReAlloc может выдать указатель, отличный от входного и при перевыделении скопирует ли он память? Чето в МСДН не нашел по этим двум вопросам информации. Ща в дельфи побалуюсь, может вопрос сам снимется.
Код:
  foo: Cardinal;
begin
  foo := LocalAlloc(LMEM_ZEROINIT, 1024);
  lstrcpyA(PAnsiChar(foo), 'qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq');

  foo := LocalReAlloc(foo, 2048, LMEM_MOVEABLE);
Вроде как работает и данные копируются.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием