View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
keepITcool keepITcool is offline
external usenet poster
 
Posts: 2,253
Default What time is it in New York?

have you looked at:
http://vbnet.mvps.org/index.html?cod...zonechange.htm


keepITcool

< email : keepitcool chello nl (with @ and .)
< homepage: http://members.chello.nl/keepitcool


"?B?TmlsZV9IZWY=?=" wrote:

And how far behind Frankfurt are they?

No, it's not as simple as it looks: if I'm lucky enough to be in New
York, or I have the admin rights to tell my machine that it's been
shipped to Manhattan, I can call the API for GetTimeZoneInformation.
That'll retrieve a time difference relative to Greenwich Mean Time
and, if I'm somewhere strange and foreign, it'll even apply the
daylight saving adjustments.

But the only locale it can query is 'here', and that's usually London.
Except when people have to run my code in New York, Frankfurt or Hong
Kong, Sydney, Seoul, Tokyo and San Francisco. And they definitely
don't have administrator privileges: all they want to do is retrieve
everything prior to a locally-defined cutoff date and time.

It is possible to enumerate the registry for Time Zone keys under
HKEY_LOCAL_MACHINE
\SOFTWARE
\Microsoft
\Windows NT
\CurrentVersion
\Time Zones

But how do I read the 'TZI' subkey, a REG_BINARY, into a
TIME_ZONE_INFORMATION user-defined type in VB? And if I did, would it
be any use to me?

Anyone else come up with alternative solutions? The USA has time
zones, too: they don't move with the seasons like ours, but a lot of
stateside developers must have met this issue for data replication
across state boundaries. It can't all be hardcoded!