Public Setup As Settings
Public Type Settings
EnRest As Boolean
EnShut As Boolean
OnBoot As Boolean
RestTime As Integer
IntervalRest
As Integer
IntervalSyn As Integer
ShutTime As Date
Server As String
End Type
Public Sub SaveSettings()
SaveSetting "EnRest", Setup.EnRest
SaveSetting "EnShut", Setup.EnShut
SaveSetting "IntervalSyn",
Setup.IntervalSyn
SaveSetting "IntervalRest", Setup.IntervalRest
SaveSetting "RestTime", Setup.RestTime
SaveSetting "ShutTime",
Format(Setup.ShutTime, "hh:nn:ss")
SaveSetting "Server",
Setup.Server
SetOnBoot Setup.OnBoot
End Sub
Public Sub ReadSettings()
On Error Resume Next
Setup.EnRest =
ReadSetting("EnRest")
Setup.EnShut = ReadSetting("EnShut")
Setup.IntervalSyn = ReadSetting("IntervalSyn")
Setup.IntervalRest =
ReadSetting("IntervalRest")
Setup.RestTime =
ReadSetting("RestTime")
Setup.ShutTime =
CDate(ReadSetting("ShutTime"))
Setup.Server =
ReadSetting("Server")
On Error GoTo 0
Setup.OnBoot = OnBoot
End
Sub
Private Sub SaveSetting(ByVal Key As String, ByVal value As String)
If
Not CBool(UpdateKey(HKEY_LOCAL_MACHINE, "Software" & App.ProductName, Key,
value)) Then
UpdateKey HKEY_CURRENT_USER, "Software" &
App.ProductName, Key, value
End If
End Sub
Private Function ReadSetting(ByVal Key As String)
ReadSetting =
GetKeyValue(HKEY_LOCAL_MACHINE, "Software" & App.ProductName, Key)
If Trim(ReadSetting) = "" Then
ReadSetting =
GetKeyValue(HKEY_CURRENT_USER, "Software" & App.ProductName, Key)
End If
End Function
Private Function OnBoot() As Boolean
Dim boot As String
boot =
GetKeyValue(HKEY_LOCAL_MACHINE, "SOFTWAREMicrosoftWindowsCurrentVersionRun",
App.EXEName)
If Trim(boot) = "" Then
boot =
GetKeyValue(HKEY_CURRENT_USER, "SOFTWAREMicrosoftWindowsCurrentVersionRun",
App.EXEName)
End If
If Trim(boot) <> ""
Then
OnBoot = True
End If
End Function
Private Sub SetOnBoot(ByVal boot As Boolean)
If boot Then
If Not UpdateKey(HKEY_LOCAL_MACHINE,
"SOFTWAREMicrosoftWindowsCurrentVersionRun", App.EXEName, App.Path & ""
& App.EXEName & ".exe") Then
UpdateKey HKEY_CURRENT_USER,
"SOFTWAREMicrosoftWindowsCurrentVersionRun", App.EXEName, App.Path & ""
& App.EXEName & ".exe"
End If
Else
DeleteValues HKEY_LOCAL_MACHINE,
"SOFTWAREMicrosoftWindowsCurrentVersionRun", App.EXEName
DeleteValues HKEY_CURRENT_USER, "SOFTWAREMicrosoftWindowsCurrentVersionRun",
App.EXEName
End If
End Sub