141 lines
6.3 KiB
VB.net
141 lines
6.3 KiB
VB.net
Public Class frmGrundeinstellungen
|
|
|
|
Private Shared _Instance As frmGrundeinstellungen = Nothing
|
|
Private _isLoading As Boolean = False
|
|
|
|
Public Shared Function Instance() As frmGrundeinstellungen
|
|
If _Instance Is Nothing OrElse _Instance.IsDisposed = True Then
|
|
_Instance = New frmGrundeinstellungen
|
|
End If
|
|
_Instance.BringToFront()
|
|
Return _Instance
|
|
End Function
|
|
Declare Function SetProcessAffinityMask Lib "kernel32.dll" (ByVal hProcess As Integer, ByVal dwProcessAffinityMask As IntPtr) As Boolean
|
|
|
|
Private Sub cmlLogart_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles cmlLogart.SelectedIndexChanged
|
|
If cmlLogart.SelectedIndex <> -1 Then
|
|
If Me.cmlLogart.SelectedIndex = 0 Then
|
|
My.Settings.vLogErrorsonly = True
|
|
Else
|
|
My.Settings.vLogErrorsonly = False
|
|
End If
|
|
My.Settings.Save()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub frmGrundeinstellungen_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
|
|
txtTimeDeleteLogs.Text = My.Settings.vDeleteLogsTime
|
|
My.Settings.Save()
|
|
End Sub
|
|
|
|
Private Sub frmGrundeinstellungen_Shown(sender As Object, e As System.EventArgs) Handles Me.Shown
|
|
If My.Settings.vLogErrorsonly = True Then
|
|
Me.cmlLogart.SelectedIndex = 0
|
|
Else
|
|
Me.cmlLogart.SelectedIndex = 1
|
|
End If
|
|
'
|
|
cmbCores.SelectedIndex = cmbCores.FindStringExact(My.Settings.Cores)
|
|
End Sub
|
|
|
|
Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles cmbCores.SelectedIndexChanged
|
|
Dim num As Integer = cmbCores.Items.Count - 1
|
|
If cmbCores.SelectedIndex = 0 Then
|
|
SetProcessAffinityMask(Process.GetCurrentProcess.Handle, (2 ^ num) - 1)
|
|
Else
|
|
num = cmbCores.SelectedIndex
|
|
SetProcessAffinityMask(Process.GetCurrentProcess.Handle, (2 ^ num) - 1)
|
|
End If
|
|
My.Settings.Cores = cmbCores.Text
|
|
My.Settings.Save()
|
|
End Sub
|
|
|
|
Private Sub TextBox4_TextChanged(sender As Object, e As EventArgs) Handles TextBox4.TextChanged
|
|
If IsNumeric(TextBox4.Text) = False Then
|
|
MsgBox("Hier sind nur Zahlen erlaubt", MsgBoxStyle.Exclamation)
|
|
TextBox4.Text = "30"
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub txterrorIndex_TextChanged(sender As Object, e As EventArgs) Handles txterrorIndex.TextChanged
|
|
|
|
End Sub
|
|
|
|
Private Sub chkAutoDeleteLogs_CheckedChanged(sender As Object, e As EventArgs) Handles chkAutoDeleteLogs.CheckedChanged
|
|
If _isLoading Then Exit Sub
|
|
|
|
If chkAutoDeleteLogs.Checked Then
|
|
|
|
Dim dt As DateTime
|
|
If Not DateTime.TryParse(txtTimeDeleteLogs.Text, dt) Then
|
|
MsgBox("Ungültige Eingabe! Der Zeitpunkt für die Löschung wurde auf 03:00 Uhr gesetzt. Bitte geben Sie die Uhrzeit in folgendem Format ein: HH:mm.", MsgBoxStyle.Information)
|
|
'chkAutoDeleteLogs.Checked = False
|
|
'txtTimeDeleteLogs.Text = ""
|
|
My.Settings.vAutoDeleteLogs = chkAutoDeleteLogs.Checked
|
|
txtTimeDeleteLogs.Text = My.Settings.vDefaultDeleteLogsTime.ToShortTimeString
|
|
My.Settings.Save()
|
|
Else
|
|
My.Settings.vDeleteLogsTime = txtTimeDeleteLogs.Text
|
|
My.Settings.vAutoDeleteLogs = chkAutoDeleteLogs.Checked
|
|
My.Settings.Save()
|
|
lblLogDeleteTime.Text = "Logs werden automatisch gelöscht um: " & My.Settings.vDeleteLogsTime.ToShortTimeString & " Uhr."
|
|
frmStart.Instance().ToolStripStatusLabel_LogDeleteTime.Text = "Logs werden automatisch gelöscht um: " & My.Settings.vDeleteLogsTime.ToShortTimeString & " Uhr."
|
|
|
|
frmStart.Instance().SetupTimerDeleteLogfiles()
|
|
End If
|
|
|
|
Else
|
|
txtTimeDeleteLogs.Text = ""
|
|
My.Settings.vAutoDeleteLogs = chkAutoDeleteLogs.Checked
|
|
My.Settings.Save()
|
|
|
|
lblLogDeleteTime.Text = "Automatisches Löschen von Logs ist inaktiv."
|
|
frmStart.Instance().ToolStripStatusLabel_LogDeleteTime.Text = "Automatisches Löschen von Logs ist inaktiv."
|
|
frmStart.Instance().TimerDeleteLogfiles.Stop()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub FrmGrundeinstellungen_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
|
|
_isLoading = True
|
|
|
|
Try
|
|
If My.Settings.vAutoDeleteLogs Then
|
|
chkAutoDeleteLogs.Checked = My.Settings.vAutoDeleteLogs
|
|
If String.IsNullOrWhiteSpace(My.Settings.vDeleteLogsTime.ToString) Then
|
|
txtTimeDeleteLogs.Text = My.Settings.vDefaultDeleteLogsTime.ToShortTimeString
|
|
lblLogDeleteTime.Text = "Logs werden automatisch gelöscht um: " & My.Settings.vDefaultDeleteLogsTime.ToShortTimeString & " Uhr."
|
|
Else
|
|
txtTimeDeleteLogs.Text = My.Settings.vDeleteLogsTime.ToShortTimeString
|
|
lblLogDeleteTime.Text = "Logs werden automatisch gelöscht um: " & My.Settings.vDeleteLogsTime.ToShortTimeString & " Uhr."
|
|
End If
|
|
Else
|
|
txtTimeDeleteLogs.Text = ""
|
|
lblLogDeleteTime.Text = "Automatisches Löschen von Logs ist inaktiv."
|
|
End If
|
|
Catch ex As Exception
|
|
|
|
End Try
|
|
|
|
_isLoading = False
|
|
End Sub
|
|
|
|
Private Sub txtTimeDeleteLogs_TextChanged(sender As Object, e As EventArgs) Handles txtTimeDeleteLogs.TextChanged
|
|
' Falls gerade geladen wird oder Checkbox nicht aktiv ist → nichts machen
|
|
If _isLoading OrElse Not chkAutoDeleteLogs.Checked Then Exit Sub
|
|
|
|
Dim dt As DateTime
|
|
' Prüfen, ob Eingabe im Format HH:mm gültig ist
|
|
If DateTime.TryParseExact(txtTimeDeleteLogs.Text, "HH:mm", Nothing, Globalization.DateTimeStyles.None, dt) Then
|
|
' Neuen Wert in Settings speichern
|
|
My.Settings.vDeleteLogsTime = dt
|
|
My.Settings.Save()
|
|
|
|
' Labels aktualisieren
|
|
lblLogDeleteTime.Text = $"Logs werden automatisch gelöscht um: {dt:HH:mm} Uhr."
|
|
frmStart.Instance().ToolStripStatusLabel_LogDeleteTime.Text = lblLogDeleteTime.Text
|
|
|
|
' Timer neu setzen
|
|
frmStart.Instance().SetupTimerDeleteLogfiles()
|
|
End If
|
|
End Sub
|
|
End Class |