Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2013, 11:39   #1
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию FileAge overload как обратится

Добрый день, вообшем банальная пробелма Подскажите как правильно обратится к новой перегруженой функции?

function FileAge(const FileName: string): Integer; overload; устарела
function FileAge(const FileName: string; out FileDateTime: TDateTime;
FollowLink: Boolean = True): Boolean; - новая без варнинга

как теперь переделать та?) Ну вот не дойдёт до меня хоть тресни...

Код:
sCurDateTime := FileDateToDateTime(FileAge(sCurFileName));
Код:
//как вариант:)
FileAge(sCurFileName,sCurDateTime , false );
sCurDateTime := sCurDateTime ;
Как правильно?)
Dozent вне форума Ответить с цитированием
Старый 14.10.2013, 11:44   #2
ZuBy
Участник клуба
 
Аватар для ZuBy
 
Регистрация: 29.09.2008
Сообщений: 1,234
По умолчанию

Последняя выдергивает из ярлыка, без лишних танцев. Но обе из них правильны
ZuBy вне форума Ответить с цитированием
Старый 14.10.2013, 11:50   #3
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

так будет правильно заменить?

Код:
FileAge(sCurFileName,sCurDateTime , false );
sCurDateTime := sCurDateTime ;
Dozent вне форума Ответить с цитированием
Старый 14.10.2013, 11:52   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Код:
if FileAge(sCurFileName,sCurDateTime,false) then <что-то делаем с sCurDateTime, в нем уже искомые данные> else <не получилось, какое-то действие>;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.10.2013, 11:54   #5
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

Ясн, значит заменяю) Извиняюсь за глупый такой вопрос...
Dozent вне форума Ответить с цитированием
Старый 14.10.2013, 11:54   #6
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,872
По умолчанию

Цитата:
Сообщение от Dozent Посмотреть сообщение
так будет правильно заменить?

Код:
FileAge(sCurFileName,sCurDateTime , false );
sCurDateTime := sCurDateTime ;
sCurDateTime := sCurDateTime ; Это бред. Выкинуть. Остальное правильно, ибо никому не известно что делать если эта функция вернет False.
northener вне форума Ответить с цитированием
Старый 14.10.2013, 11:57   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Остальное правильно, ибо никому не известно что делать если эта функция вернет False.
Не согласен. Возможно файл не существует, вот и False. Возможно монопольно занят, хотя не проверял что в этом случае возвращает
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.10.2013, 12:02   #8
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

ага да проверка на возврат TRUE не помешает...

Код:
              if FileAge(sCurFileName, sCurDateTime, false) = true then
                sCurDateTime := sCurDateTime;

Последний раз редактировалось Stilet; 14.10.2013 в 13:03.
Dozent вне форума Ответить с цитированием
Старый 14.10.2013, 12:07   #9
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Нафига это присвоение? В sCurDateTime уже есть нужные данные, если функция вернула True. Да и выражение if A=True всегда вызывает усмешку. Почему не if A? A уже имеет тип Boolean. Зачем с чем-то сравнивать?
Код:
if not FileAge(sCurFileName, sCurDateTime, false) then sCurDateTime := 0;
Дальше эту дату-время куда-то отобразить нужно скорее всего. Если она = 0, значит по каким-то причинам FileAge не отработала, не отображать. Иначе - отображай на здоровье
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 14.10.2013 в 12:14.
Аватар вне форума Ответить с цитированием
Старый 14.10.2013, 12:16   #10
Dozent
Форумчанин
 
Регистрация: 21.05.2008
Сообщений: 495
По умолчанию

т.е. присвоение лишнее? Функция вернёт даные как выходной параметр и запишет в переменую?
А по поводу if a=true подчеркнуло просто вот я и засмущался, решил на верняка написать)
Dozent вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как обратится к объектам marales Помощь студентам 2 14.11.2012 11:10
Как обратится к конкретной ячейке loki22208 БД в Delphi 8 03.05.2010 20:07
Как обратится к символам конкретной строки? QuadroX Помощь студентам 1 11.02.2010 12:27
Как обратится к глобальной переменной из модуля tavrocotaps Общие вопросы Delphi 2 10.06.2009 11:08
как обратится HrenoV Общие вопросы C/C++ 1 16.02.2007 18:05