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

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

FileRead даёт результат -1 [D7, WinXP]


Илья ©   (2004-12-12 17:58:00) 

Делаю открытие файла для чтения с помощью FileOpen. Всё в порядке. Пытаюсь читать из этого файла с помощью FileRead, и бац - результат -1. Вот мой код:

procedure TMultiFileCopier.Copy_Files;
var
 ReadFileHandle : INTEGER;
 Buffer : PChar;
 ReadFileName : STRING;
 BytesCopied : Int64;
begin                                                               //File names
   ReadFileName := 'C:\toread.txt';      

   //Handles
   ReadFileHandle := FileOpen(ReadFileName, fmOpenRead);

                 
   Buffer := PChar(AllocMem((Sqr(1024))); //1 MB
   //Reading
   FileSeek(ReadFileHandle, 0, 0);
   BytesCopied := FileRead(ReadFileHandle, Buffer^, Sqr(1024)); //Read 1 MB

   //Closing file
   FileClose(ReadFileHandle);
   FreeMem(Buffer);

end;

Вот результаты :
Bytes Copied = -1
ReadFileHandle <> -1

Почему не читается?


Leonid Troyanovsky   (2004-12-12 21:16:00) [1]


> Илья   (12.12.04 20:18) [3]

> Что нет проверок в этом коде, это не значит, что их нету
> вообще.


Win32Check(BytesCopied > 0)

--
С уважением, LVT.


Илья   (2004-12-12 20:18:00) [2]

Файл точно есть.
Что нет проверок в этом коде, это не значит, что их нету вообще.


Anatoly Podgoretsky   (2004-12-12 18:11:00) [3]

Во всем коде ни одной проверки на допустимость.


-=SS=-   (2004-12-12 18:10:00) [4]

А ты уверен что  файл у тебя такой есть ?


Наверх

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