Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB
Expertise: Intermediate
Nov 9, 2004



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Read Time Zone Names Stored in the Registry

The following code reads the time zone names stored in the registry and places those names in a combobox. The time zone names (there are about 50 or so) look like: "Greenwich Standard Time, Newfoundland Standard Time, Tasmania Standard Time," etc.

Option Explicit
Dim TimeZoneCol As Collection
Const ValueName As String = "Display"
Const MasterKey As String = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones"

Private Sub Form_Load()
    Dim KeyCol As Collection
    'be sure key exists
    If MRegistry.CheckRegistryKey(HKEY_LOCAL_MACHINE, MasterKey) Then
        'retrieve all subkeys
        Set KeyCol = MRegistry.EnumRegistryKeys(MRegistry.HKEY_LOCAL_MACHINE, MasterKey)
        Dim TheKey As Variant
        Set TimeZoneCol = New Collection
        'for each subkey, get the "Name" value
        For Each TheKey In KeyCol
             CboTimeZone.AddItem MRegistry.GetRegistryValue(MRegistry.HKEY_LOCAL_MACHINE, addSlash(MasterKey) & TheKey, ValueName, "")
    End If
End Sub

Private Function addSlash(ByVal sPath As String) As String
    sPath = Trim(sPath)
    If Len(sPath) > 0 Then
        If Right$(sPath, 1) <> "/" Then
            If Right$(sPath, 1) <> "\" Then
                sPath = sPath & "\"
            End If
        End If
        addSlash = sPath
    End If
End Function
NOTE: The class MRegistr handles the registry reading issues. The combobox CboTimeZone fills MRegistr with the time zones.
Dinesh Asanka
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date