Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

[Delphi] Как можно отследить изменение системной даты ?

Здравствуйте.

Кто-нибудь может подсказать, как можно программно отслеживать
изменение системной даты у компьютера ?
Я пишу программу, которая, как предполагается, должна работать
сутками, пока включен компьютер. И требуется производить
определенные действия, если дата в компьютере была изменена.
Например, наступил новый день.
Как это можно поймать ? Может есть какие-то виндовские сообщения
или функции ?

Заранее благодарю.

Ответить   Feniks Wed, 30 Jun 2004 16:31:18 +0300 (#181729)

 

Ответы:

-=[Дрова!]=-
30 июня 2004 г. /среда 16:31:18/ Feniks |E-Mail: <mailto:feni***@b*****.ua>|
в мессаге <<[Delphi] Как можно отследить изменение системной даты ?>> накрапал:

[B~E~G~I~N~>
Feniks> Здравствуйте.
Feniks> Кто-нибудь может подсказать, как можно программно отслеживать
Feniks> изменение системной даты у компьютера ?
Feniks> Я пишу программу, которая, как предполагается, должна работать
Feniks> сутками, пока включен компьютер. И требуется производить
Feniks> определенные действия, если дата в компьютере была изменена.
Feniks> Например, наступил новый день.
Feniks> Как это можно поймать ? Может есть какие-то виндовские сообщения
Feniks> или функции ?
Feniks> Заранее благодарю.
[E|.|N|.|D|.>
Поставь таймер и через определенное время проверяй дату... Вот и все :))
Еще можно взять текущее время при загрузке проги и прикинуть через сколько проверить
дату :))

Ответить   -=[-B0╝MaN-]=- Thu, 1 Jul 2004 00:56:47 +0300 (#181964)

 

Здравствуйте, Борман.

Вы писали 1 июля 2004 г. в 0:56:47 [GMT +2:00]:

[B~E~G~I~N~>>
Feniks>> Здравствуйте.
Feniks>> Кто-нибудь может подсказать, как можно программно отслеживать
Feniks>> изменение системной даты у компьютера ?
Feniks>> Я пишу программу, которая, как предполагается, должна работать
Feniks>> сутками, пока включен компьютер. И требуется производить
Feniks>> определенные действия, если дата в компьютере была изменена.
Feniks>> Например, наступил новый день.
Feniks>> Как это можно поймать ? Может есть какие-то виндовские сообщения
Feniks>> или функции ?
Feniks>> Заранее благодарю.
[E|.|N|.|D|.>>

проверить

Про таймер я знаю. Но не хочется с его помощью. Может есть людские
способы ? :-)

Ответить   Feniks Thu, 1 Jul 2004 11:43:20 +0300 (#182150)

 

Здоровеньки булы, Feniks!

1 июля 2004 г., четверг, 13:43:20 (GMT+05:00), пришел ко мне
почтальон Почкин и всучил письмо с пометкой "[Delphi] Как можно отследить изменение
системной даты ?",
в котором сообщалось следующее:

Feniks>>> сутками, пока включен компьютер. И требуется производить
Feniks>>> определенные действия, если дата в компьютере была изменена.
Feniks>>> Например, наступил новый день.
Feniks>>> Как это можно поймать ? Может есть какие-то виндовские сообщения
Feniks>>> или функции ?

глянь WM_TIMECHANGE - сообщение посылается при изменении времени
(установке нового), смену суток не отслеживает.
PS: В справке написано что _*надо*_ посылать это сообщение при смене
времени, т.е. если я поменяю дату и не пошлю сообщение, WM_TIMECHANGE
может и не сработать, но может это и не так - я этим не занимался:

Remarks

An application that changes the system time should send this message
to all top-level windows. To send the WM_TIMECHANGE message to all
top-level windows, an application can use the SendMessage function
with the hwnd parameter set to HWND_TOPMOST.

Ответить   Томилов Александр Thu, 1 Jul 2004 15:36:31 +0500 (#182176)

 

Hi, ALL!

Все так! Софтина меняя время ДОЛЖНА посылать WM_TIMECHANGE, но не
ОБЯЗАНА и форточка на это плюет. Короче способ, но не надежный.

Ответить   Thu, 1 Jul 2004 23:08:56 +0700 (#182408)