![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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]А ты уверен что файл у тебя такой есть ?