RecordOrganizer/app/VERSION_CHECKER/ModuleMySettings.vb
Digital Data - Marlon Schreiber ce89aef1cd MS_ChangesKW38
2017-09-25 13:59:52 +02:00

155 lines
6.4 KiB
VB.net

Imports System.IO
Imports System.Xml
Imports DD_LIB_Standards
Module ModuleMySettings
Public PATH_FileExclusions As String = Path.Combine(Application.UserAppDataPath(), "FileExclusions.xml")
Dim ConfigPath As String = Path.Combine(Application.UserAppDataPath(), "UserConfig.xml")
Public DTEXCLUDE_FILES As DataTable
Public USER_USERNAME As String = ""
Public USER_GUID As Integer
Public USER_LANGUAGE As String = "de-DE"
Public MyConnectionString As String = ""
Public MyServer_UpdatePath As String = ""
Public VERSION_SERVER = "1.0.0.0"
Public MIN_REQUIRED_VERSION = "1.0.0.0"
Public VERSION_USER = "1.0.0.0"
Public FORCE_UPDATE As Boolean = False
Public UPDATE_ID As Integer
Public ALL_USERS As Boolean = False
Public VERSIONS_FOR_FORCE_UPDATE As String = ""
Public FOLDER_TEMP As String
Public LogErrorsOnly As Boolean = True
Public MY_INSTALL_PATH As String
Public DT_UPDATE_ITEMS As DataTable
Public ERROR_WHILE_UPDATING As Boolean = False
Public Function LoadFileExclusion()
Dim rowresult As String = ""
Try
'if file doesn't exist, create the file with its default xml table
If Not File.Exists(path_FileExclusions) Then
DTEXCLUDE_FILES = CreateExclusionTable()
DTEXCLUDE_FILES.WriteXml(path_FileExclusions)
End If
DTEXCLUDE_FILES = GetTablefromXML(PATH_FileExclusions)
'For Each Row As DataRow In DT.Rows
' rowresult &= Row.Item("FILE_CONTAIN")
' Select Case Row.Item("FILE_CONTAIN")
' End Select
'Next
Return True
Catch ex As Exception
MsgBox("Error in LoadFileExclusion" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return False
End Try
Return True
End Function
Private Function CreateExclusionTable() As DataTable
Try
' Create sample Customers table, in order
' to demonstrate the behavior of the DataTableReader.
Dim table As New DataTable
table.TableName = "TBEXCLUSION"
' Create two columns, ID and Name.
table.Columns.Add("FILE_CONTAIN", GetType(System.String))
Dim newRow As DataRow = table.NewRow()
newRow("FILE_CONTAIN") = "Thumbs"
table.Rows.Add(newRow)
Dim newRow1 As DataRow = table.NewRow()
newRow1("FILE_CONTAIN") = "\~$"
table.Rows.Add(newRow1)
Dim newRow2 As DataRow = table.NewRow()
newRow2("FILE_CONTAIN") = ".db"
table.Rows.Add(newRow2)
Dim newRow3 As DataRow = table.NewRow()
newRow3("FILE_CONTAIN") = "desktop.ini"
table.Rows.Add(newRow3)
table.AcceptChanges()
Return table
Catch ex As Exception
MsgBox("Error in CreateExclusionTable" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
Return Nothing
End Try
End Function
Public Function MySettings_Load()
Try
Dim rowresult As String = ""
Dim DT As DataTable
ConfigPath = ConfigPath.Replace("VERSION_CHECKER\VersionCheck", "Digital Data\ADDI - Akte der Dinge")
'if file doesn't exist, create the file with its default xml table
If Not File.Exists(ConfigPath) Then
Return False
End If
DT = GetTablefromXML(ConfigPath)
If DT Is Nothing Then
MsgBox("Configuration could not be loaded!! Check LogFile!", MsgBoxStyle.Critical)
Return False
End If
For Each Row As DataRow In DT.Rows
rowresult &= Row.Item("ConfigName")
Select Case Row.Item("ConfigName")
Case "MyConnectionString"
Dim connstring As String
'Den ConnectonString mit verschlüsseltem PW laden
Dim csb As New SqlClient.SqlConnectionStringBuilder
csb.ConnectionString = Row.Item("Value")
If Not csb.ConnectionString = "" Then
If csb.ConnectionString.Contains("Password=") Then
'sa-
'Jetzt das Passwort entschlüsseln
Dim PWplainText As String
Dim wrapper As New clsEncryption("!35452didalog=")
' DecryptData throws if the wrong password is used.
Try
PWplainText = wrapper.DecryptData(csb.Password)
connstring = Row.Item("Value").ToString.Replace(csb.Password, PWplainText)
Catch ex As Exception
ClassLogger.Add("- the Password '" & csb.Password & "' could not be decrypted", False)
connstring = ""
End Try
Else
'Windows-Auth
connstring = Row.Item("Value").ToString
End If
MyConnectionString = connstring
Else
MyConnectionString = ""
End If
Case "LogErrorsOnly"
LogErrorsOnly = CBool(Row.Item("Value"))
clsCURRENT.LOG_ERRORS_ONLY = LogErrorsOnly
End Select
Next
LoadFileExclusion()
Catch ex As Exception
MsgBox("Error in LoadMyConfig" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
ClassLogger.Add("Error in LoadMyConfig: " & ex.Message, True)
Return False
End Try
Return True
End Function
Private Function GetTablefromXML(path As String)
Try
Dim DS As New DataSet
DS.ReadXml(path)
Return DS.Tables(0)
Catch ex As Exception
MsgBox("Error in GetTablefromXML" & vbNewLine & ex.Message & vbNewLine & "ConfigPath: " & vbNewLine & path, MsgBoxStyle.Critical)
ClassLogger.Add("Error in GetTablefromXML: " & ex.Message, True)
ClassLogger.Add("ConfigPath: " & ConfigPath, False)
Return Nothing
End Try
End Function
End Module