Як отримати системний час в мілісекундах

Як отримати системний час в мілісекунди

Подивися в довідці цю функцію. Вона повертає кількість мілісекунд минули з старту Віндовс. Можна засікати час з точністю до мілісекунди

The GetTickCount function retrieves the number of milliseconds that have elapsed since Windows was started.

Все відмінно, ось тільки незрозуміло, яке відношення має "кількість мілісекунд минули з старту Віндовс" до системного часу.

Чи не підійде - я не зовсім правильно сказав-потрібен час доби в мілісекундах (Віновс постійно запущений) 0мсек = 00:00:00. а функція Time не підходить?

> Потрібен час доби в мілісекундах

В годині 60 хвилин.
У хвилині 60 секунд.
В секунді 1000 мілісекунд.

Множити і складати вміємо?

Я думаю, варто подивитися GetSystemTime, і взяти звідти час доби. В 1 секунді 1000 мілісекунд, в 1 хвилині 60 секунд, в одному годині 60 хвилин. Здається, все вийде: час = годинник * 3600000 + хвилини * 60000 + секунди * 1000 + мілісекунди
Я не помиляюсь?

Як програмою отримати системний час в годинах, в хвилинах, в секундах - в чому завгодно, щоб це можна було перевести в мілісекунди - ось, що мене цікавило

Ось так точно не помилитеся:
((Годинник * 60 + хвилини) * 60 + секунди) * 1000 + мілісекунди

І на додаток Trunc (SystemTimeToDateTime (SystemTime) * 86400000) але це вже дрібниці, або самостійно перевести структури в мілісекунди, теж не складно.

Немає у мене GetSystemTime є GetTime

> DVP777 (28.11.03 15:07) [7]

Дивно. Якщо Вас цікавило саме це, то чому Ви сказали, що GetSystemTime не підійде?

> DVP777 (28.11.03 15:07) [7]

У перекладі з російської на англійську слова "час" виходить слово "time".
Не допомогло?

DVP777 (28.11.03 15:12) [10]
У всіх є, і у тебе теж.
uses windows

> DVP777 (28.11.03 15:12) [10]

Якщо у Вас є Windows, значить, у Вас є GetSystemTime.

Плохіш_ (28.11.03 15:12) [12]
Чи не підійде по ряду причин
1. немає частини під назвою Date, можна замінити на Now
2. доведеться приводити локальне час до системного з урахуванням зсуву, зайва робота

А про дату він і не питав ;-)

Поняття дата / час трохи ширше ніж ти думаєш

Мінлива now повертає поточне значення в TdataTime: double. 1 = 24 години. Перерахувати складно?

Схожі статті