First pass of new config

This commit is contained in:
Jonathan Jenne
2019-04-16 12:39:48 +02:00
parent 93bd7d0733
commit 4c86bd4c5c
28 changed files with 984 additions and 1127 deletions

View File

@@ -1,6 +1,8 @@
Imports System.ComponentModel
Imports System.Globalization
Imports DLLLicenseManager
Imports DigitalData.Modules.Logging
Imports DigitalData.Modules.Config
Public Class ClassInit
@@ -11,24 +13,77 @@ Public Class ClassInit
<STAThread()>
Public Sub InitLogger()
ClassLogger.Init("", Environment.UserName)
ClassLogger.Add("## ProcessManager für Windream gestartet - " & Now, False)
If LogErrorsOnly = False Then
'Setzt DetailLog zurück
LogErrorsOnly = False = False
My.Settings.Save()
End If
LOGCONFIG = New LogConfig(LogConfig.PathType.AppData)
LOGGER = LOGCONFIG.GetLogger("ProcessManager")
LOGGER.Info("## ProcessManager für Windream gestartet - {0}", Now)
'ClassLogger.Init("", Environment.UserName)
'ClassLogger.Add("## ProcessManager für Windream gestartet - " & Now, False)
'If LogErrorsOnly = False Then
' 'Setzt DetailLog zurück
' LogErrorsOnly = False = False
' My.Settings.Save()
'End If
'Throw New Exception("Dummy Fehler!")
End Sub
<STAThread()>
Public Sub InitUserConfig()
Settings_Load()
CONFIG = New ConfigManager(Of ClassConfig)(LOGCONFIG, Application.UserAppDataPath, Application.CommonAppDataPath)
LOGGER.Info("Config loaded")
If CONFIG.Config.ConnectionStringTest <> String.Empty Then
LOGGER.Debug("Test Connection String loaded")
CONNECTION_STRING = DecryptConnectionString(CONFIG.Config.ConnectionStringTest)
Else
LOGGER.Debug("Connection String loaded")
CONNECTION_STRING = DecryptConnectionString(CONFIG.Config.ConnectionString)
End If
VIEWER_UNIVERSAL = CONFIG.Config.UniversalViewerPath
VIEWER_XCHANGE = CONFIG.Config.XChangeViewerPath
VIEWER_SUMATRA = CONFIG.Config.SumatraViewerPath
VIEWER_ZOOM_LEVEL = CONFIG.Config.PDFViewerZoomLevel
VIEWER_PDF = CONFIG.Config.PDFViewer
VIEWER_ALL = CONFIG.Config.DefaultViewer
INDEX_DMS_ERSTELLT = CONFIG.Config.IndexDmsErstellt
INDEX_DMS_ERSTELLT_ZEIT = CONFIG.Config.IndexDmsErstelltZeit
USER_MANAGER_PATH = CONFIG.Config.UserManagerPath
LOGCONFIG.Debug = Not LOG_ERRORS_ONLY
'Settings_Load()
End Sub
Private Function DecryptConnectionString(EncryptedConnectionString As String) As String
Dim oBuilder As New SqlClient.SqlConnectionStringBuilder With {
.ConnectionString = EncryptedConnectionString
}
If oBuilder.ConnectionString.Contains("Password=") Then
Dim oPlaintextPassword As String
Dim oDecryptor As New ClassEncryption("!35452didalog=")
Try
oPlaintextPassword = oDecryptor.DecryptData(oBuilder.Password)
Catch ex As Exception
LOGGER.Debug("Password {0} could not be decrypted. Assuming plaintext password.")
oPlaintextPassword = oBuilder.Password
End Try
Return EncryptedConnectionString.Replace(oBuilder.Password, oPlaintextPassword)
Else
Return EncryptedConnectionString
End If
End Function
<STAThread()>
Public Function InitDatabase()
Dim dbResult As Boolean
If MyConnectionString <> String.Empty Then
If CONNECTION_STRING <> String.Empty Then
dbResult = ClassDatabase.Init()
Else
MsgBox("No Databaseconnection configured. (First Start or Appdata not accessible)" & vbNewLine & "Basic-Config will be loaded.", MsgBoxStyle.Information)
@@ -45,18 +100,7 @@ Public Class ClassInit
Return True
End If
End Function
'Public Function InitWindream()
' Try
' ' Windream instanziieren
' _windreamPM = New ClassPMWindream()
' 'Windream initialisieren (Connection, Session, ... aufbauen)
' Return _windreamPM.Init()
' Catch ex As Exception
' MsgBox("Fehler bei Initialisieren von windream: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
' Return False
' End Try
'End Function
<STAThread()>
Sub Refresh_Licence()
Try
@@ -76,7 +120,7 @@ Public Class ClassInit
LICENSE_EXPIRED = True
LICENSE_COUNT = 0
End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> license initialized....", False)
If LOG_ERRORS_ONLY = False Then ClassLogger.Add(" >> license initialized....", False)
LICENSE_PROFILES = split(2)
Catch ex As Exception
@@ -143,7 +187,7 @@ Public Class ClassInit
USERCOUNT_LOGGED_IN = DT_CHECKUSER_MODULE.Rows(0).Item("USERCOUNT_LOGGED_IN")
If LogErrorsOnly = False Then ClassLogger.Add(" >> User exists....", False)
If LOG_ERRORS_ONLY = False Then ClassLogger.Add(" >> User exists....", False)
'Am System anmelden
Refresh_Licence()
'Check_User_Exists_in_PMGroups()
@@ -154,7 +198,7 @@ Public Class ClassInit
' USERCOUNT_LOGGED_IN = ClassDatabase.Execute_Scalar(sql, MyConnectionString, True)
sql = "DELETE FROM TBDD_USER_MODULE_LOG_IN WHERE USER_ID = " & USER_ID & " AND MODULE = 'Process-Manager'"
ClassDatabase.Execute_non_Query(sql, True)
If LogErrorsOnly = False Then ClassLogger.Add(" >> Count Users logged in: " & USERCOUNT_LOGGED_IN.ToString, False)
If LOG_ERRORS_ONLY = False Then ClassLogger.Add(" >> Count Users logged in: " & USERCOUNT_LOGGED_IN.ToString, False)
If LICENSE_COUNT < USERCOUNT_LOGGED_IN And LICENSE_EXPIRED = False Then
MsgBox("Die Anzahl der aktuell angemeldeten User (" & USERCOUNT_LOGGED_IN.ToString & ") überschreitet die Anzahl der aktuellen Lizenzen!" & vbNewLine & "Anzahl der Lizenzen: " & LICENSE_COUNT.ToString & vbNewLine & "Bitte setzen Sie sich mit dem Systembetreuer in Verbindung!", MsgBoxStyle.Critical, "Achtung:")
ClassLogger.Add(" >> Die Anzahl der aktuell angemeldeten User (" & USERCOUNT_LOGGED_IN.ToString & ") überschreitet die Anzahl der Lizenzen (" & LICENSE_COUNT & ") für Process Manager!", False)
@@ -165,7 +209,7 @@ Public Class ClassInit
End If
End If
'Alles OK bis hierhin...nun die FolderwatchKonfig laden
If LogErrorsOnly = False Then ClassLogger.Add(" >> Init Userlogin successfull completed....", False)
If LOG_ERRORS_ONLY = False Then ClassLogger.Add(" >> Init Userlogin successfull completed....", False)
End If
Catch ex As Exception
ClassLogger.Add("Unexpected Error in InitUserLogin: " & ex.Message, True)
@@ -193,17 +237,14 @@ Public Class ClassInit
Dim sql As String = "select * from tbdd_Modules where SHORT_NAME = 'PM'"
Dim DT As DataTable = ClassDatabase.Return_Datatable(sql)
If DT.Rows.Count = 1 Then
vWLaufwerk = DT.Rows(0).Item("STRING1")
vVERSION_DELIMITER = DT.Rows(0).Item("VERSION_DELIMITER")
vFILE_DELIMITER = DT.Rows(0).Item("FILE_DELIMITER")
LICENSE_VALID = DT.Rows(0).Item("LICENSE_VALID")
Try
VERSION_DELIMITER = DT.Rows(0).Item("VERSION_DELIMITER")
FILE_DELIMITER = DT.Rows(0).Item("FILE_DELIMITER")
LICENSE_VALID = DT.Rows(0).Item("LICENSE_VALID")
WMSESSION_STARTSTOP_STARTUP = DT.Rows(0).Item("WMSESSION_STARTSTOP_STARTUP")
Catch ex As Exception
ClassLogger.Add("Unexpected Error in Settings_LoadBasicConfig: " & ex.Message, True)
WMSESSION_STARTSTOP_STARTUP = False
End Try
Else
Return False
End If