hoppfrosch
9/18/2012 - 9:33 AM

PROBLEM: Determine number of Array elements [#ahk #problem

PROBLEM: Determine number of Array elements [#ahk #problem

test := GetTimeZones()
ExitApp

GetTimeZones() {
   ; Taken from: http://www.autohotkey.com/community/viewtopic.php?t=73951
   
   OutputDebug % "**** GetTimeZones START ****"
   ; Get the "Time Zones" entries from registry
   RegRoot := "HKEY_LOCAL_MACHINE"
   RegKey  := "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones"
   RegTimeZones := {}
   
   if (!RegTimeZones)
      OutputDebug % "!RegTimeZones"
   
   Loop, %RegRoot%, %RegKey%, 2
   {
      RegRead, DSP, %RegRoot%, %RegKey%\%A_LoopRegName%, Display
      RegRead, TZI, %RegRoot%, %RegKey%\%A_LoopRegName%, TZI
      RegTimeZones[A_LoopRegName] := [DSP, TZI]
      
      OutputDebug % A_Index " - Display,:" RegTimeZones[A_LoopRegName][1] ", TimeZoneInformation" RegTimeZones[A_LoopRegName][2]
   }
   
   i := RegTimeZones.MaxIndex()
   ; Why is i not equal the number of elements within RegTimeZones?
   OutputDebug % "GetTimeZones found " RegTimeZones.MaxIndex() "(" i ") Timezones"
   OutputDebug % "**** GetTimeZones END ****"
   Return RegTimeZones
}