Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.03.04;
Скачать: CL | DM;

Вниз

GlobalAlloc   Найти похожие ветки 

 
s_   (2007-02-14 10:32) [0]

Ув. Мастера! мне необходимо блок памяти распределить с помощью GlobalAlloc.
Вот структура:

 TBlocks=record
     a:integer;
     b:array [0..10]of Char;
 end;
 PBlocks=^TBlocks;
var Blocks:PBlocks;

Необходимо записать в BLocks несколько блоков этой структуры.
А также прочитать.
Заранее спасибо!


 
Плохиш ©   (2007-02-14 10:42) [1]

var Blocks:array of PBlocks;


 
TRUNK ©   (2007-02-14 10:44) [2]

создание
Blocks := PBlocks(GlobalAlloc(GMEM_FIXED,BlocksCount*SizeOf(TBlocks)));

использование
B: TBlocks;
B := PBlocks(Cardinal(Blocks)+BlocksIndex*SizeOf(TBlocks))^;


 
s_   (2007-02-14 11:26) [3]

> Blocks := PBlocks(GlobalAlloc(GMEM_FIXED,BlocksCount*SizeOf(TBlocks)));
Это выделение блока памяти;
а как записать в Blocks несколько блоков структуры.
Так?

 for i:=0 to BlocksCount-1 do
   Blocks := PBlocks(Cardinal(Blocks)+i*SizeOf(TBlocks));
 


 
TRUNK ©   (2007-02-14 11:46) [4]


> а как записать в Blocks несколько блоков структуры

for i := 0 to BlockCount do
 PBlocks(Cardinal(Blocks)+i*SizeOf(TBlocks))^ := B;



Страницы: 1 вся ветка

Текущий архив: 2007.03.04;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.043 c
2-1171270457
Riply
2007-02-12 11:54
2007.03.04
Импорт функций из Kernel32.


4-1161168734
DevilDevil
2006-10-18 14:52
2007.03.04
TBitmap.Transparent


1-1168595172
Rentgen
2007-01-12 12:46
2007.03.04
PageControl ? - без вкладок


4-1160778744
HITMAN
2006-10-14 02:32
2007.03.04
Узнать момент включения хранителя экрана


15-1170938697
allucard
2007-02-08 15:44
2007.03.04
Win2000 и подключения(удалённая модератором трабла).