|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Ошибка в чтении файла
Код:
procedure TForm1.Button1Click(Sender: TObject); const ReadBuffer = 2400; var buffer: PChar; buf: string; readb: DWord; begin hfile:=CreateFile(PChar(ExtractFilename(ParamStr(0))+'original.hashtable'),GENERIC_READ,FILE_SHARE_READ,nil,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0); Repeat ReadFile(hfile, Buffer[0], READBUFFER, readb, nil); Buffer[readb]:=#0; OemToAnsi(Buffer, Buffer); Memo1.Text:=Memo1.Text+String(Buffer); until (readb<READBUFFER); end; Ругается на память... ему не нравиться Buffer[readb]:=#0 -((( в чем ошибка??? |
#2
|
|||
|
|||
я в коде ошибся на самом деле ExtractFilePath(ParamStr(0))
но все равно выдает ошибку! |
#3
|
||||
|
||||
Выдели память под Buffer. У тебя указатель Buffer ни на что не указывает.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#4
|
|||
|
|||
А потоки зачем в мире созданы?)))))))))
загнал файл в поток, (кстати, размер в этом случае размер значения неимеет, хоть тер загнал, все равно - работает), да и юзай, и придет тебе счастье. Говори что думаешь, думай, что говоришь. (Шоссе 60) |