Various ways and methods of obtaining registry settings:   Return to List

Getting a setting (first example when you know entire key):
EndSetting = GetSetting("MySpecialKey", "BalanceCodes", "EndCodeSetting")

Getting a setting (second example -- when you're retrieving all settings):
' NOTE: The returned array has 2 dimensions: (a) 0 which is the key that we don't care about, and (b) 1 the value which we do
myRegexSettings = GetAllSettings("MySpecialKey", "ActivityChartTeamMbrs")
If Not IsEmpty(myRegexSettings) Then ' If there are any members -- bring them to the list box
    For i = LBound(myRegexSettings, 1) To UBound(myRegexSettings, 1)
        lstTeamMembers.AddItem myRegexSettings(i, 1) ' The value of the particular setting
    Next
End If

' More complex example -- where we're setting value of controls !!

myRegexSettings = GetAllSettings("MySpecialKey", "RandomMkup") ' myRegexSettings is a variant by default
If Not IsEmpty(myRegexSettings) Then ' A unique way of figuring out whether to continue loading
    For i = LBound(myRegexSettings, 1) To UBound(myRegexSettings, 1)
        Temp = myRegexSettings(i, 0)
        TempType = Left(Temp, 3) ' The type of control
        RPos = InStrRev(Temp, "_")
        TempRow = Right(Temp, Len(Temp) - RPos)
        Dim MyCtl As Control
        Select Case TempType
            Case "Chk"
                If Len(myRegexSettings(i, 1)) > 0 Then
                    Set MyCtl = Me.Controls.Item("chk_r" & TempRow)
                    MyCtl.Value = myRegexSettings(i, 1)
                End If
            Case "Loc"
                If Len(myRegexSettings(i, 1)) > 0 Then
                    Set MyCtl = Me.Controls.Item("txtLocate_r" & TempRow)
                    MyCtl.Text = myRegexSettings(i, 1)
                End If
            Case "MkP"
                If Len(myRegexSettings(i, 1)) > 0 Then
                    Set MyCtl = Me.Controls.Item("txtMarkPcnt_r" & TempRow)
                    MyCtl.Text = myRegexSettings(i, 1)
                End If
            Case "MkT"
                If Len(myRegexSettings(i, 1)) > 0 Then
                    Set MyCtl = Me.Controls.Item("txtMarkTag_r" & TempRow)
                    MyCtl.Text = myRegexSettings(i, 1)
                End If
            Case "Par"
                If Len(myRegexSettings(i, 1)) > 0 Then
                    Set MyCtl = Me.Controls.Item("txtParaPcnt_r" & TempRow)
                    MyCtl.Text = myRegexSettings(i, 1)
                    Set MyCtl = Me.Controls.Item("txtAEPcnt_r" & TempRow)
                    MyCtl.Text = 100 - Val(myRegexSettings(i, 1))
                End If
        End Select
    Next
End If

If part of the system registry (not in the folder for VB and VBA settings):
MyResult = System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Outlook\Today\Folders", Key)



Note to Webmaster