We help IT Professionals succeed at work.

GetTickCount equivalent for NT/2k?

Olympus
Olympus asked
on
851 Views
Last Modified: 2010-04-06
How do I get the 8byte value indicating the amount of milliseconds since startup in NT/2k? GetTickCount only works properly under 9x/me.

--Olympus
Comment
Watch Question

Commented:
timeGetTime()

Commented:
?? GetTickCount works fine in NT/2000, too!

Regards, Madshi.

Commented:
GetTickCount works fine form me in Win 2k.

Did you upgrade to Delphi4/5 at the same time? With the introduction of unsigned 4-byte numbers (longword) Borland broke a lot of programs.

In Delphi 3 you would use longint, to store the result of GetTickCount, but in Delphi 4/5 you must use longword. The best is to uses DWORD, that works fine under all 32-bit versions of Delphi.

Author

Commented:
GetTickCount is less accurate in NT/2k then, because I have a client->server based socket program, and when i send GetTickCount to server and it returns it and I subtract it from GetTickCount again, it always becomes 0 ms.  (When doing the same thing in me, i get 3-6 ms, and no, there is nothing wrong with my socket code)
Commented:
This one is on us!
(Get your first solution completely free - no credit card required)
UNLOCK SOLUTION

Commented:
Note: The "Sleep(5)" is only to demonstrate the usege...
(It is not part of the usage)

Commented:
KobiK is right - if the resolution of the timer is a problem then you should use QueryPerformanceCounter().

Author

Commented:
"Windows NT:  To obtain the time elapsed since the computer was started, look up the System Up Time counter
in the performance  data in the registry key  HKEY_PERFORMANCE_DATA . The value returned is an 8 byte
value."

how do i query the system up time counter?

Commented:
Olympus,

I guess that this key in WinNT refers to what QueryPerformanceCounter returns.
Every high-resoltion counter i saw used the QueryPerformanceCounter, also with JCL (delphi-jedi) - JclCounter.pas and other "well-known" packages...

Why "fight" the system? :)
Unlock the solution to this question.
Join our community and discover your potential

Experts Exchange is the only place where you can interact directly with leading experts in the technology field. Become a member today and access the collective knowledge of thousands of technology experts.

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.