You are a sharp cookie, young man! Yes from my [meagre] Windows programming days, I recall a 32-bit uptime (since boot) counter in milliseconds that overflows/wraps-around (2**32 = 4.3 billion max value / 1000 = 4.3 million seconds / 3600 = 1193 hours / 24 = 49.7 days).
--ravi
P.S: I think newer versions of Windows provide a 64-bit counter that applications can switch to using, which I would assume Windows kernel and system modules already do. My rough estimate tells me that will wraparound in about 500 million years, by which time I hope humankind would have abandoned Windows ;-). But there is the flip side: as computing speed and fine granularity applications grow, time measurements in more fractional seconds (than milli) gain importance, bringing the above consideration back into relevance, but I exaggerate. Even at nanoseconds, if my calculation above is right, we have 500 years of uptime. (not to forget there are programmatic ways to deal with this stuff, and other non-uptime timers are already available).
P.P.S: Found it: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/gettickcount.asp
-- Support something better than yourself: ;-) PeTA: http://www.peta.org/ GreenPeace: http://www.greenpeace.org/ If you have nothing better to do: http://platosbeard.org/