3 / 3 / 0
Регистрация: 02.10.2014
Сообщений: 68

Можно ли вывести текущее время с точностью до миллисекунд?

06.10.2014, 17:17. Показов 7553. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!

Можно ли в VB6 вывести текущее время с точностью до миллисекунд?

Заранее спасибо!
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.10.2014, 17:17
Ответы с готовыми решениями:

Текущее время с точностью до миллисекунд
Здравствуйте! Столкнулся со следующей проблемой. Нужно узнать текущее время с точностью до миллисекунд, использую time.h, но там можно...

Время с точностью до миллисекунд
Как получить время до миллисекунд. Time() и Now().CurrentTime выводят только до секунд. Для просто вывода можно обойтись String time3...

Время запуска/конца выполнения программы с точностью до миллисекунд
С. как сделать чтобы в начале программы выводилась дата и время с миллисекундами и тоже самое при её завершении?

4
Модератор
10056 / 3901 / 884
Регистрация: 22.02.2013
Сообщений: 5,852
Записей в блоге: 79
06.10.2014, 17:51
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Option Explicit
 
Private Type SYSTEMTIME
    wYear As Integer
    wMonth As Integer
    wDayOfWeek As Integer
    wDay As Integer
    wHour As Integer
    wMinute As Integer
    wSecond As Integer
    wMilliseconds As Integer
End Type
 
Private Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
 
Private Sub Form_Load()
    Me.Show
    PrintTime
End Sub
 
Private Sub PrintTime()
    Dim t As SYSTEMTIME
    
    Do While True
        GetLocalTime t
        Caption = t.wHour & ":" & t.wMinute & ":" & t.wSecond & "." & t.wMilliseconds
        DoEvents
    Loop
End Sub
2
1 / 2 / 0
Регистрация: 06.08.2016
Сообщений: 7
09.10.2018, 20:56
Не-а. Там будет давать с точностью до милисекунд раз по 10-20 одинаково, затем сменит значение и опять. Погрешность получается иногда до десятьіх секундьі
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
10.10.2018, 22:49
Когда-то на другом форуме сравнивали разные виндовские таймеры на предмет разрешающей способности. Вот программа
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Declare Function timeGetTime Lib "winmm.dll" () As Long
Declare Function GetTickCount Lib "kernel32" () As Long
Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As Currency) As Long
 
Sub dd()
Dim endTime!, cLoops&
Dim cTimer&, oldTimer!, newTimer!
Dim cTick&, oldTick&, newTick&
Dim cGT&, oldGT&, newGT&
Dim cPC&, oldPC@, newPC@
 
endTime = Timer + 1
While Timer < endTime
    newTimer = Timer
    If newTimer > oldTimer Then oldTimer = newTimer: cTimer = cTimer + 1
    newTick = GetTickCount
    If newTick > oldTick Then oldTick = newTick: cTick = cTick + 1
    newGT = timeGetTime
    If newGT > oldGT Then oldGT = newGT: cGT = cGT + 1
    QueryPerformanceCounter newPC
    If newPC > oldPC Then oldPC = newPC: cPC = cPC + 1
    cLoops = cLoops + 1
Wend
Debug.Print "Число циклов", cLoops
Debug.Print "Timer", cTimer
Debug.Print "GetTickCount", cTick
Debug.Print "timeGetTime", cGT
Debug.Print "QueryPerf.", cPC
 
End Sub
Здесь подсчитывается, сколько раз в течение 1 секунды изменилось число, возвращаемое разными функциями для измерения времени.
Результаты в VBA на разных компьютерах с разными ОС.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
P3-500, Win2k
Число циклов   127719 
Timer          100 
GetTickCount   100 
timeGetTime    100 
QueryPerf.     127719
 
WinXP, Core 2 Duo 1.6 ГГц
Число циклов   362059 
Timer          64 
GetTickCount   64 
timeGetTime    997 
QueryPerf.     362059
 
Win7(32), AMD II X2 245 2.9 ГГц
Число циклов   1534403 
Timer          256 
GetTickCount   65 
timeGetTime    998 
QueryPerf.     1534403
 
WinXP P4 2.80GHz, XL2003
Число циклов   530485 
Timer          64 
GetTickCount   64 
timeGetTime    65 
QueryPerf.     530485
 
WinXP (Core 2 Duo E8400 3.0 ГГц)
Число циклов   1791993 
Timer          64 
GetTickCount   65 
timeGetTime    989 
QueryPerf.     1791993
Функция timeGetTime на большинстве систем "тикает" 1000 раз в секунду, но на некоторых системах 64 или 100 раз в секунду.
Добавил в код GetLocalTime - получил 64 раза в секунду.
Получается, что единственным надежным вариантом остается QueryPerformanceCounter (QPC) - можно поймать момент изменения одной из упомянутых функций или Now, зафиксировать время и значение QPC и дальше высчитывать время по разности текущего и сохраненного значения QPC.
2
Модератор
10056 / 3901 / 884
Регистрация: 22.02.2013
Сообщений: 5,852
Записей в блоге: 79
10.10.2018, 22:57
Цитата Сообщение от Казанский Посмотреть сообщение
Функция timeGetTime на большинстве систем "тикает" 1000 раз в секунду, но на некоторых системах 64 или 100 раз в секунду.
Она тикает с частотой мультимедийного таймера заданной timeBeginPeriod (глобально).
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.10.2018, 22:57
Помогаю со студенческими работами здесь

Вывести текущее время в формате ЧЧ:ММ:СС
я хочу из time(0), получить время (ЧЧ:ММ:СС). что я делаю не так? или есть более лёгкий способ его получения? вот мой код, но он...

Вывести текущее время и текущую дату
создать программу, которая выводит текущее время и текущую дату. var DateTime : TdateTime; procedure Tform1.Button1Click(Sender:...

Как получить текущее Текущее Unix epoch время в милисекундах?
Хочу получить через эксель выписку егрюл egrul.nalog.ru Общий порядок такой: 1) Отправляю ПОСТ запрос на адрес https://egrul.nalog.ru/ ...

Как в Java ME вывести на экран текущее время?
Пробовал через класс DateField, но там нужно выставлять самому дату и время, а мне нужно что-бы он автоматически выводил время.

Вывести в консоль текущее время с заданным интервалом
Всем доброго времени суток, начал изучать bash скрипты и не могу решить задачку с следующими условиями Используя командную строку в unix...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru