![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
buf[0..2048]array of byte и buf array of bute;setlength(buf,204 [D7, WinXP]
redlord © (2004-10-12 19:24:00)всем привет
народ объясните в чом разница между
buf[0..2048]array of byte
и
buf array of bute;setlength(buf,2048);
в первом случае все работает а во втором ошибка при обращении к адресу (при попытке использовать масив)
redlord (2004-10-12 21:53:00) [1]to jack128
ок спасибо теперь все понял
jack128 (2004-10-12 20:44:00) [2]redlord (12.10.04 20:39) [39]
blockwrite(Fout, buf,2048,donewrite);
Я угадал!!! :-)
blockwrite(Fout,buf[low(buf)],2048,donewrite);
redlord (2004-10-12 20:39:00) [3]сори за длительное отсутствие
за очепятки тоже извентиляюсь :-)
(выше тройки по русскому у меня никогда не было)
цыкл в работе изпользуется
Fin:=tfilestream.Create(info[FnTotal].f,$0);//fmOpenRead);
info[Fntotal].s:=Fin.Size;
for n:=1 to Fin.size div 2048 do
begin
Fin.ReadBuffer(buf, 2048);
blockwrite(Fout,buf,2048,donewrite);
application.ProcessMessages;
end;
Fin.ReadBuffer(buf,Fin.size mod 2048 );
blockwrite(Fout,buf,Fin.size mod 2048,donewrite);
application.ProcessMessages;
Fin.Free;
...
closefile(Fout);
паток применен для возможности копирования самого себя.
вся эта каша применяется в проге паковщика файлов с возможностью само распаковки
SammIk (2004-10-12 20:30:00) [4]НЕ в студию, а к стене. Все скажет в "последнем слове")
jack128 (2004-10-12 20:29:00) [5]Мдя.. Какое пиво?.. Тут опиум курят в обществ. местах. Форум - это ведь общественое место?
GEN++ (2004-10-12 20:28:00) [6]Автора темы - в студию!
SammIk (2004-10-12 20:20:00) [7]Опиум, курю я. Опиум!
Суслик (2004-10-12 20:18:00) [8]
> [33] SammIk © (12.10.04 20:17)
ты кочегарь, кочегарь анашу. Жалко, если пропадет.
SammIk (2004-10-12 20:17:00) [9]У меня аж трубка погасла, пока я тут постил!(
SammIk (2004-10-12 20:16:00) [10]Маиби
SammIk (2004-10-12 20:15:00) [11]Тогда второй вариант, выделил, гад, меньше чем нам сказал!!!
Обманывает он нас!!!
jack128 (2004-10-12 20:15:00) [12]jack128 © (12.10.04 20:12) [29]
ну то есть не обязательно Move, любая функция, где используются не типизированные параметры..
jack128 (2004-10-12 20:12:00) [13]SammIk © (12.10.04 20:03) [26]
а почему со стат массивом нормально проходит??? Мне импанирует вариант с Move(buf, ..); это классическая ошибка при работе с дин массивами, строками...
SammIk (2004-10-12 20:05:00) [14]мож я ее с movememory спутал
Суслик (2004-10-12 20:03:00) [15]
> [24] SammIk © (12.10.04 20:01)
еще как изменяет вам память.
Неверная....
SammIk (2004-10-12 20:03:00) [16]Не, скорее всего выделил он 2048, но где-то решил заглянуть дальше.
А хотя кто его знает)
begin...end (2004-10-12 20:01:00) [17]
> [23] SammIk © (12.10.04 19:59)
> Может на оборот? 2049 вместо 2048?
Ну это смотря с какой стороны посмотреть ;-) Короче, Автор: 2048 <> 2049.
SammIk (2004-10-12 20:01:00) [18]И в-первом и во-втором стоит писать @buff.
Если мне не изменяет память, Вы уж судари простите, но
я за делфеи не сидел ужо пол года.
SammIk (2004-10-12 19:59:00) [19]Может на оборот? 2049 вместо 2048? Я про тоже.
Поздравляю, в нашем полку любопытствующих прибыло!!
-
А автор, походу умыл руки.
Ты не стесняйся, мы не обидем. Нам интересно!!
Суслик (2004-10-12 19:58:00) [20]
> Дорогой сосел, как Вы думаете, что может быть акромя этого.
> В данной(есесно) ситуации?
за сосла в глаз :)) шутка, ну вы поняли.
Может быть например такое:
move(buff, .., 2048)
В первом случае будет все нормально.
Во стором вероятен AV