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

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

Функция заглючила [D6, WinXP]


Rogis ©   (2005-08-30 10:37:00) 

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

Загрузил резервную копию, которая была до изменений и добавления других функций в программу, думал, может что забажело, но нет, это функция и в резервной копии больше не работает.
В чем может быть проблема?
Функция проверяла сегодняшнюю дату, и ту, которую нужно было,
и сравнивала.
Если Сегодняшняя дата равна нужной, или больше, то тогда возвращала ТРУ!
А у меня она постоянно возвращает тру!


Rogis   (2005-08-30 14:23:00) [1]

Эй, Ega23 Че та у меня удаляется?


Ega23   (2005-08-30 12:28:00) [2]

2 Rogis   (30.08.05 10:37)

А ты уверен в том, что твоя программа настолько супер-пупер, чтобы что-то там удалялось?


dmitry501   (2005-08-30 11:54:00) [3]

Rogis   (30.08.05 11:45) [5]
не может записать в реестр, или считать из него, возможно не хватает прав.
p.s.
Код перепишите, посмотрите как Вам советуют сделать. [3] [4]


begin...end   (2005-08-30 11:52:00) [4]

А, нет, извините. Ошибся.


begin...end   (2005-08-30 11:51:00) [5]

> Rogis   (30.08.05 11:45) [5]

Это сравнение строк, а не дат. При таком подходе дата "20.08.2005" окажется больше, чем "10.09.2005".


Rogis   (2005-08-30 11:45:00) [6]

sniknik
Не дататайм, а просто дата!

Function ScanForDate(Day : String) : Boolean;
Var
DateKill : String;
Begin
IF KeyExists('DateKill') = False Then
WriteRegString('Date','DateKill',DateToStr(Date + StrToInt(Day)));
DateKill := ReadRegString('Date','DateKill','');
   IF Date >= StrToDate(DateKill) Then Result := True Else Result := False
End;


begin...end   (2005-08-30 11:16:00) [7]

> Rogis   (30.08.05 10:37)

> Функция проверяла сегодняшнюю дату, и ту, которую нужно
> было,
> и сравнивала.

См. в справке: функции CompareDate и CompareDateTime из модуля DateUtils.


sniknik   (2005-08-30 10:55:00) [8]

> Это примерно так?
;), тогда уж
function GetSegodnyaDataandNeSegodnya(_date:Tdatetime): boolean;
begin
 result:= date() >= _date;
end;


(просто не представляю, чтобы датайм был реально чемуто когдато равно...)


Antonn   (2005-08-30 10:39:00) [9]

А хде код?
Это примерно так?
function GetSegodnyaDataandNeSegodnya(_date:Tdatetime):boolean;
begin
if now>=_date then result:=true else result:=false;
end;


Александр Иванов   (2005-08-30 10:38:00) [10]

Код выложи, телепатов нет.


Наверх

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