Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TFileStream [D6, Win2k]


lead-in ©   (2008-01-24 17:23:00) 

Доброго утра/дня/вечера.
Пишу вот что:

var map: array of byte;
...
fstream_in := TFileStream.Create(path + 'data_in.dat', fmOpenRead);
fstream_out := TFileStream.Create(path + 'd2.dat', fmOpenWrite);
size_in := fstream_in.Seek(0, soFromEnd);
fstream_in.Seek(0, soFromBeginning);
fstream_out.Seek(0, soFromBeginning);
SetLength(map, size_in);
fstream_in.Read(map, size_in);


при этом вылезает ошибка "access violation..." (в сам массив ничего не записывается, файл изначально не пустой)

если просто поменять массив на статический...

var map: array [0..999] of byte;
...
fstream_in := TFileStream.Create(path + 'data_in.dat', fmOpenRead);
fstream_out := TFileStream.Create(path + 'd2.dat', fmOpenWrite);
size_in := fstream_in.Seek(0, soFromEnd);
fstream_in.Seek(0, soFromBeginning);
fstream_out.Seek(0, soFromBeginning);
SetLength(map, size_in);
fstream_in.Read(map, size_in);


...то всё нормально! В чём тут может быть дело?
Заранее благодарен.


Германн   (2008-01-24 17:37:00) [1]


> fstream_in.Read(map [0], size_in);
>


clickmaker   (2008-01-24 17:35:00) [2]

size_in чему равен?


Amoeba   (2008-01-24 17:34:00) [3]

Отладчиком пользоваться умеешь?

И еще почитай для начала в букваре про динамические массивы.


Наверх

Титульная страница Поиск, карта сайта Написать письмо