in reply to looks good, but something fishy is happening
in thread Win32 FILETIME and 64-bit numbers

my ($year,$month,$wday,$day,$hour,$minute,$second,$msecond)= getTime (time);

The parameter to getTime should be $time not time (don't you hate typos - I do). This would explain why you get a different "$time" every "time"...

Update: BTW, when I run the code with the 64 bit number you are using, I get 6413 2002 as the year.

my $ft = pack "LL", 0x89f625f0,0x01c21315; printtime $ft;

gives me 2002-6-13 20:4:34.964.

Replies are listed 'Best First'.
Re: Re: looks good, but something fishy is happening
by John M. Dlugosz (Monsignor) on Aug 06, 2002 at 19:51 UTC
    That's it! Wow, so much for use warnings.

    Your pack data is scrambled (on a little endian machine anyway). You will get 89 as your first byte, working towards the most-significant part of the first L (the f0), then go to the 01 and work toward the 15.

    In the int64, the most-significant byte is 01, which is the right range.

    —John