Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.22;
Скачать: CL | DM;

Вниз

Где ошибка?   Найти похожие ветки 

 
parasolka ©   (2006-10-04 10:47) [0]

Пишу dll, но в одном месте возникает ошибка. Вот кусок кода:


         AssignFile(Card, TempDir+"Patient\patient.txt");
         Reset(Card);
         try
           while not Eof(Card) do begin
             Readln(Card, szTmp1);
           end;
         finally
           CloseFile(Card);
         end;


Ошибка в строке while not Eof(Card) do begin

[Error] main.pas(714): Missing operator or semicolon

В обычном проекте ошибки нет. Card - TextFile. Помогите, пожалуйста, разобраться.


 
Dmitrij_K   (2006-10-04 10:50) [1]

Ошибка в другом месте.


 
Palladin ©   (2006-10-04 10:52) [2]

пересмотри названия переменных, вдруг у тебя там там eof


 
Palladin ©   (2006-10-04 10:57) [3]

и для textfile используется append либо rewrite


 
parasolka ©   (2006-10-04 11:15) [4]

Переменной eof у меня нет. Вот что странно. Функции для работы с файлами, которые я использую находятся в модуле System, а он в uses не включен, при этом нет ошибки - "неизвестный идентификатор". Если же добавить system в uses, то возникает ошибка:
[Error] main.pas(5): Identifier redeclared: "System".

Еще интерестно - если заменить Eof(Card) на просто Eof, то ошибки нет.


 
Amoeba ©   (2006-10-04 11:19) [5]


> Вот что странно. Функции для работы с файлами, которые я
> использую находятся в модуле System, а он в uses не включен,
>  при этом нет ошибки - "неизвестный идентификатор". Если
> же добавить system в uses, то возникает ошибка:
> [Error] main.pas(5): Identifier redeclared: "System".

Так и должно быть. Модуль System всегда автоматически подключается по умолчанию. Так что возмущение компилятора абсолютно справедливо.


 
Palladin ©   (2006-10-04 11:19) [6]

значит название метода процедуры свойства... емае.. поищи в своих именах идентификаторов...

если не найдешь то думаю прямое указание System.Eof(f) спасет ОРД

p.s. system всегда неявно подключается к любому модулю без указания его в uses


 
parasolka ©   (2006-10-04 11:24) [7]

Все, спасибо. System.Eof(Card) помогло.


 
parasolka ©   (2006-10-04 11:27) [8]

Я понял в чем дело. У меня этот кусок кода располагался в блоке
with Query do, где Query: TQuery, поэтому компилятор воспринимал Eof как свойство Query.


 
clickmaker ©   (2006-10-04 11:58) [9]


> [8] parasolka ©   (04.10.06 11:27)

не стоит увлекаться вложенными with
Трудно потом блох ловить



Страницы: 1 вся ветка

Текущий архив: 2006.10.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
3-1156518910
Winni
2006-08-25 19:15
2006.10.22
Не получается подключить БД Paradox через ODBC и ADO


4-1149041613
Delphi5.01
2006-05-31 06:13
2006.10.22
ошибка в уничтожении потока Delphi+Thread+TerminateThread


2-1159642430
vegarulez
2006-09-30 22:53
2006.10.22
Как удалить ячейку из стринг грид?


2-1159974459
Juri
2006-10-04 19:07
2006.10.22
сортировка итемсов в ListBox


15-1159519408
Juri
2006-09-29 12:43
2006.10.22
А как определить стоимость написанной программы?