Форум: "Начинающим";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Внизуказатели Найти похожие ветки
← →
непонимающий (2006-09-08 11:41) [0]Возникла проблемка, код:
type
TInf_soob = packed record
zag: TZag_inf_soob;
inf_kadr: array of Byte;
MD5: integer;
end;
PInf_soob=^TInf_soob;
......................................................................
s:=OpenDialog1.FileName;
AssignFile(F,s);
Reset(F,1);
.........................
seek(F,i2);
GetMem(glav,i4);
BlockRead(F,glav^.inf_kadr,i5); {???????????????}
glav^.MD5:=0;
glav_nach.priznak_konca:=1;
SetEvent(event_otpr);
...................................
проблема возникает вот на этой строке {???????????????}: из файла просто не считывает в glav^.inf_kadr информацию, может кто-нибудь подскажет как это исправить...
← →
Reindeer Moss Eater © (2006-09-08 11:43) [1]из файла просто не считывает в glav^.inf_kadr информацию, может кто-нибудь подскажет как это исправить...
Надо указывать правильный буфер для считывания, а не то что у тебя
← →
Reindeer Moss Eater © (2006-09-08 11:45) [2]Твоя пакет рекорд TInf_soob это непрерывный кусок памяти.
Но элементы массива inf_kadr лежат за пределами этого куска.
← →
непонимающий (2006-09-08 11:47) [3]т.е под inf_kadr нужно отдельно выделять память???
← →
Сергей М. © (2006-09-08 11:50) [4]
> т.е под inf_kadr нужно отдельно выделять память???
>
Угу... Аж i5 байт ..
← →
непонимающий (2006-09-08 12:15) [5]спасибо, сейчас попробуем...
← →
Loginov Dmitry © (2006-09-08 15:38) [6]Вместо
GetMem(glav,i4);
используй
New(glav)
Не забывай про очистку памяти:
Dispose(glav);
Размер массиву inf_kadr устанавливай вручную следующим образом:
SetLength(inf_kadr, N)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.014 c