Вниз
Скачать: CL | DM;

Еще раз о том что было   Найти похожие ветки 

← →
Alibaba ©   (2003-07-16 15:36) [0]

Всем привет.

Работу FindFirst/FindNext/FindClose
обсуждали много раз и с различных сторон.

Но у меня такая сторона проблемы,
что я нигде не нашел ответ как её решить.

Обычная процедура:

Описание №1.
function TfrmMain.TaskExist(Task: string): boolean;
var
sr: TSearchRec;
begin
Result:=(FindFirst(Task,faAnyFile,sr) = 0);
FindClose(sr);
end;

Описание №2.
function TaskExist(Task: string): boolean;
var
sr: TSearchRec;
begin
Result:=(FindFirst(Task,faAnyFile,sr) = 0);
FindClose(sr);
end;

Описание №1 отличается от Описание №2 тем, что в первом случае функция описана в главной форме (в главном модуле), а во втором случае я создал дополнительный модуль и там описал функцию.

Результат: в первом случае работает, во втором - ошибка на строке (FindClose(sr)) следующего содержания: "Incompatible types: "Cardinal" and "TSearchRec""

В принципе мне не сложно описать функцию в главном модуле - и пускай себе работает, но.... все равно хотелось бы разобраться - почему не работает во втором случае???

Подскажите плиз, у кого есть соображения по этому поводу.


← →
Юрий Федоров ©   (2003-07-16 15:43) [1]

Попробуй написать во втором случае SysUtils.findClose


← →
Alibaba ©   (2003-07-16 16:00) [2]

>Юрий Федоров ©

Спасибо!
Помогло.

А почему так? Глюк Дельфовый?


← →
Юрий Федоров ©   (2003-07-16 16:03) [3]

У тебя где-то еще есть findClose
поищи.
Либо в этом же модуле, либо в модулях, которые в uses объявлены после sysutils


← →
Юрий Федоров ©   (2003-07-16 16:05) [4]

В смысле процедура (функция) с таким названием и с параметром типа cardinal


← →
Alibaba ©   (2003-07-16 16:12) [5]

> Юрий Федоров ©

FindClose - нет ни в одном из моих модулей

Возможно где то есть в модулях, которые я подключаю в разделе uses. Но это тоже "вряд ли"

TaskExist - тоже проверил - нигде нет (имя функции - уникально)


← →
Alibaba ©   (2003-07-16 16:14) [6]

> Юрий Федоров ©

Ты считаеш - у меня некорректно построена программа?


← →
Юрий Федоров ©   (2003-07-16 16:19) [7]

Насчет "некорректно" - не знаю, программы не видел.
Чудес не бывает.
Ты вот напиши ее без sysUtils, вставб параметр Cardinal (чтобы откомпилировалось), и вызови find Declaration по правой кнопке, может она покажет, где это


← →
Плохиш   (2003-07-16 16:19) [8]

Чудес не бывает!

System, SysUtils, Windows


← →
Юрий Федоров ©   (2003-07-16 16:21) [9]

Ну да, значит в Windows


← →
Alibaba ©   (2003-07-16 17:02) [10]

>Юрий Федоров © (16.07.03 16:19)

OK.
Попробую... :)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
14-100899
DeMoN-777
2003-07-10 21:42
2003.07.31
Конкурсы


3-100590
Dinik
2003-07-01 11:16
2003.07.31
Шифрование данных таблицы


1-100710
Дома
2003-07-18 15:00
2003.07.31
Гипер подсказка...


3-100552
Ich Hasse
2003-07-08 00:38
2003.07.31
Поиск по первым буквам (SQL)


14-100934
race1
2003-07-13 15:41
2003.07.31
momed COM




   Наверх