diff --git a/app/.vs/DD_PM_WINDREAM/DesignTimeBuild/.dtbcache b/app/.vs/DD_PM_WINDREAM/DesignTimeBuild/.dtbcache
index 671ed4a..715c91b 100644
Binary files a/app/.vs/DD_PM_WINDREAM/DesignTimeBuild/.dtbcache and b/app/.vs/DD_PM_WINDREAM/DesignTimeBuild/.dtbcache differ
diff --git a/app/DD_PM_WINDREAM/ClassInit.vb b/app/DD_PM_WINDREAM/ClassInit.vb
index 1a43d20..d2d1850 100644
--- a/app/DD_PM_WINDREAM/ClassInit.vb
+++ b/app/DD_PM_WINDREAM/ClassInit.vb
@@ -2,7 +2,7 @@
Imports DLLLicenseManager
Public Class ClassInit
- Private _windreamPM As ClassPMWindream
+
Public _lizenzManager As ClassLicenseManager
Public Sub New()
End Sub
@@ -40,18 +40,18 @@ 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()
+ '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
+ ' Catch ex As Exception
+ ' MsgBox("Fehler bei Initialisieren von windream: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
+ ' Return False
+ ' End Try
+ 'End Function
Sub Refresh_Licence()
Try
Me._lizenzManager = New ClassLicenseManager("#DigitalData35452!#", "")
@@ -173,11 +173,35 @@ Public Class ClassInit
sql = "select * from TBDD_CONNECTION"
CURRENT_DT_TBDD_CONNECTION = ClassDatabase.Return_Datatable(sql)
+ Settings_LoadBasicConfig()
Catch ex As Exception
ClassLogger.Add("Unexpected Error in InitBasics: " & ex.Message, True)
ERROR_STATE = "Basics not initialized"
End Try
End Sub
+ Private Shared Function Settings_LoadBasicConfig()
+ Try
+ 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")
+ Try
+ WMSESSION_STARTSTOP_STARTUP = DT.Rows(0).Item("WMSESSION_STARTSTOP_STARTUP")
+ Catch ex As Exception
+ WMSESSION_STARTSTOP_STARTUP = False
+ End Try
+
+ Else
+ Return False
+ End If
+ Catch ex As Exception
+ MsgBox("Error in Settings_LoadBasicConfig" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
+ Return False
+ End Try
+ Return True
+ End Function
Private Function Check_User_Exists_in_Group(ByVal Groupname As String)
Try
Dim sel = String.Format("select T1.* from TBDD_GROUPS T, TBDD_GROUPS_USER T1 WHERE T.GUID = T1.GROUP_ID AND T1.USER_ID = {0} AND UPPER(T.NAME) = '{1}'", USER_ID, Groupname)
diff --git a/app/DD_PM_WINDREAM/ClassWindream_allgemein.vb b/app/DD_PM_WINDREAM/ClassWindream_allgemein.vb
index 2ceb680..09a19bf 100644
--- a/app/DD_PM_WINDREAM/ClassWindream_allgemein.vb
+++ b/app/DD_PM_WINDREAM/ClassWindream_allgemein.vb
@@ -31,13 +31,13 @@ Public Class ClassWindream_allgemein
'''
Sub New()
' wenn ein Fehler bei der Initialisierung auftrat
- If Not Me.Init() Then
- ' Nachricht ausgeben
- MsgBox("Es trat ein Fehler bei der Initialisierung der Klasse windream auf. Bitte prüfen Sie ob der windream-Server aktiv ist und alle Dienste gestartet sind.", MsgBoxStyle.Exclamation, "Fehler bei Initialisierung")
+ 'If Not Me.Init() Then
+ ' ' Nachricht ausgeben
+ ' MsgBox("Es trat ein Fehler bei der Initialisierung der Klasse windream auf. Bitte prüfen Sie ob der windream-Server aktiv ist und alle Dienste gestartet sind.", MsgBoxStyle.Exclamation, "Fehler bei Initialisierung")
- ' das Programm "abschießen"
- Process.GetCurrentProcess.Kill()
- End If
+ ' ' das Programm "abschießen"
+ ' Process.GetCurrentProcess.Kill()
+ 'End If
End Sub
@@ -46,7 +46,7 @@ Public Class ClassWindream_allgemein
'''
''' Liefert True wenn das Anmelden erfolgreich war, sonst False
'''
- Public Function Init() As Boolean
+ Public Function Create_Session() As Boolean
Try
Try
' Session-Objekt instanziieren und mit dem im Client ausgewählten Server belegen
@@ -120,7 +120,7 @@ Public Class ClassWindream_allgemein
Catch ex As Exception
If Err.Number = -2147220985 Then
- MsgBox("Die installierte windream-Version ist nicht ausreichend für den Betrieb der Tool Collection für windream." & vbNewLine & _
+ MsgBox("Die installierte windream-Version ist nicht ausreichend für den Betrieb der Tool Collection für windream." & vbNewLine &
"Bitte kontaktieren Sie Digital Data." & vbNewLine & vbNewLine & "Fehlernachricht:" & vbNewLine & Err.Description, MsgBoxStyle.Exclamation, "Unzureichende windream-Version")
Else
MsgBox("Fehlernachricht:" & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Fehler beim Login an windream")
@@ -129,7 +129,36 @@ Public Class ClassWindream_allgemein
End Try
End Function
+ Public Function Start_WMCC_andCo()
+ If WMSESSION_STARTSTOP_STARTUP = True Then
+ Try
+ Dim owindreamControlCenter = CreateObject("Wmcc.ControlCenter")
+ Dim owindreamIndexService = CreateObject("WMIndexServer.WMIdxSvControl")
+ owindreamControlCenter.StartVFSService(1)
+ owindreamIndexService.Start()
+ System.Threading.Thread.Sleep(1500)
+ Create_Session()
+ Catch ex As Exception
+ ClassLogger.Add("Error while starting up WMCC and IndexService: " & ex.Message, True)
+ End Try
+
+
+ End If
+ End Function
+ Public Function Stop_WMCC_andCo()
+ If WMSESSION_STARTSTOP_STARTUP = True Then
+ Try
+ Dim owindreamControlCenter = CreateObject("Wmcc.ControlCenter")
+ Dim owindreamIndexService = CreateObject("WMIndexServer.WMIdxSvControl")
+ owindreamControlCenter.StartVFSService(0)
+ owindreamIndexService.Shutdown()
+ owindreamControlCenter.ExitCC(0)
+ Catch ex As Exception
+ ClassLogger.Add("Error while Stopping WMCC and IndexService: " & ex.Message, True)
+ End Try
+ End If
+ End Function
#End Region
diff --git a/app/DD_PM_WINDREAM/ModuleMySettings.vb b/app/DD_PM_WINDREAM/ModuleMySettings.vb
index 954f0e3..90830ae 100644
--- a/app/DD_PM_WINDREAM/ModuleMySettings.vb
+++ b/app/DD_PM_WINDREAM/ModuleMySettings.vb
@@ -21,6 +21,7 @@ Module ModuleMySettings
Public vWLaufwerk As String = "W"
Public vVERSION_DELIMITER As String = "~"
Public vFILE_DELIMITER As String = "_"
+ Public WMSESSION_STARTSTOP_STARTUP As Boolean = False
Public Function Settings_Load()
Try
@@ -190,21 +191,5 @@ Module ModuleMySettings
Return True
End Function
- Public Function Settings_LoadBasicConfig()
- Try
- Dim sql As String = "select * from tbdd_Modules where NAME = 'Record-Organizer'"
- 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")
- Else
- Return False
- End If
- Catch ex As Exception
- MsgBox("Error in Settings_LoadBasicConfig" & vbNewLine & ex.Message, MsgBoxStyle.Critical)
- Return False
- End Try
- Return True
- End Function
+
End Module
diff --git a/app/DD_PM_WINDREAM/frmAdministration.vb b/app/DD_PM_WINDREAM/frmAdministration.vb
index dd851b9..e518b7f 100644
--- a/app/DD_PM_WINDREAM/frmAdministration.vb
+++ b/app/DD_PM_WINDREAM/frmAdministration.vb
@@ -60,7 +60,7 @@ Public Class frmAdministration
' Windream instanziieren
_windreamPM = New ClassPMWindream()
'Windream initialisieren (Connection, Session, ... aufbauen)
- _windreamPM.Init()
+ _windreamPM.Create_Session()
Catch ex As Exception
MsgBox("Fehler bei Initialisieren von windream: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
End Try
diff --git a/app/DD_PM_WINDREAM/frmMain.vb b/app/DD_PM_WINDREAM/frmMain.vb
index fea0b5d..3a9f597 100644
--- a/app/DD_PM_WINDREAM/frmMain.vb
+++ b/app/DD_PM_WINDREAM/frmMain.vb
@@ -25,15 +25,6 @@ Public Class frmMain
Private _windream As New ClassWindream_allgemein
Private Sub frmProfiles_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
- Try
- ClassAllgemeineFunktionen.LoginOut("LOGOUT")
-
- ClassLogger.Add("## ProcessManager beendet - " & Now, False)
- ClassLogger.Add("", False)
- Catch ex As Exception
- ClassLogger.Add("### Fehler bei LogOut")
- ClassLogger.Add("### Fehler: " & ex.Message)
- End Try
Try
' Position und Größe speichern
My.Settings.frmMainSize = Me.Size
@@ -43,6 +34,18 @@ Public Class frmMain
Catch ex As Exception
ClassLogger.Add("Error in Save FormLayout: " & ex.Message)
End Try
+ If _windreamPM.oSession.aLoggedin = True Then
+ _windreamPM.Stop_WMCC_andCo()
+ End If
+
+ Try
+ ClassAllgemeineFunktionen.LoginOut("LOGOUT")
+ ClassLogger.Add("## ProcessManager beendet - " & Now, False)
+ ClassLogger.Add("", False)
+ Catch ex As Exception
+ ClassLogger.Add("### Fehler bei LogOut")
+ ClassLogger.Add("### Fehler: " & ex.Message)
+ End Try
End Sub
Private Sub frmProfiles_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp
@@ -128,6 +131,12 @@ Public Class frmMain
Check_Timer_Notification()
Restore_Form_Position()
+ _windreamPM = New ClassPMWindream
+ _windreamPM.Start_WMCC_andCo()
+ If _windreamPM.oSession.aLoggedin = False Then
+ MsgBox("Login on windream was not possible. Please check the log." & vbNewLine & "Application will close now!", MsgBoxStyle.Critical)
+ Me.Close()
+ End If
If LogErrorsOnly = False Then ClassLogger.Add(" >> MainForm initialized!", False)
End If
@@ -908,7 +917,7 @@ Public Class frmMain
Private Function Init_windream()
Try
_windream = New ClassWindream_allgemein
- _windream.Init()
+ _windream.Create_Session()
If LogErrorsOnly = False Then ClassLogger.Add(" >> windream initialized", False)
Return True
Catch ex As Exception
diff --git a/app/DD_PM_WINDREAM/frmMassValidator.vb b/app/DD_PM_WINDREAM/frmMassValidator.vb
index 516f1fb..4a01014 100644
--- a/app/DD_PM_WINDREAM/frmMassValidator.vb
+++ b/app/DD_PM_WINDREAM/frmMassValidator.vb
@@ -29,7 +29,7 @@ Public Class frmMassValidator
FORM_Shown = False
Try
_windream = New ClassWindream_allgemein
- _windream.Init()
+ _windream.Create_Session()
If LogErrorsOnly = False Then ClassLogger.Add("windream initialized frmMassValidator", False)
Catch ex As Exception
diff --git a/app/DD_PM_WINDREAM/frmSQL_DESIGNER.vb b/app/DD_PM_WINDREAM/frmSQL_DESIGNER.vb
index 3d48456..aee6993 100644
--- a/app/DD_PM_WINDREAM/frmSQL_DESIGNER.vb
+++ b/app/DD_PM_WINDREAM/frmSQL_DESIGNER.vb
@@ -56,7 +56,7 @@ Public Class frmSQL_DESIGNER
' Windream instanziieren
_windreamPM = New ClassPMWindream()
'Windream initialisieren (Connection, Session, ... aufbauen)
- _windreamPM.Init()
+ _windreamPM.Create_Session()
Catch ex As Exception
MsgBox("Fehler bei Initialisieren von windream: " & vbNewLine & ex.Message, MsgBoxStyle.Critical, "Achtung:")
End Try
diff --git a/app/DD_PM_WINDREAM/frmSplash.vb b/app/DD_PM_WINDREAM/frmSplash.vb
index edadc0c..d6bfc4a 100644
--- a/app/DD_PM_WINDREAM/frmSplash.vb
+++ b/app/DD_PM_WINDREAM/frmSplash.vb
@@ -93,12 +93,12 @@ Public NotInheritable Class frmSplash
Init.InitBasics()
Init.InitUserLogin()
- System.Threading.Thread.Sleep(600)
+ 'System.Threading.Thread.Sleep(600)
- bw.ReportProgress(CalcProgress(5), "Initialize windream-Settings")
- Init.InitWindream()
+ 'bw.ReportProgress(CalcProgress(5), "Initialize windream-Settings")
+ 'Init.InitWindream()
- System.Threading.Thread.Sleep(250)
+ 'System.Threading.Thread.Sleep(250)
End If
diff --git a/app/DD_PM_WINDREAM/frmValidator.vb b/app/DD_PM_WINDREAM/frmValidator.vb
index 6a07a0d..b7f3fe6 100644
--- a/app/DD_PM_WINDREAM/frmValidator.vb
+++ b/app/DD_PM_WINDREAM/frmValidator.vb
@@ -265,7 +265,7 @@ Public Class frmValidator
Private Function Init_windream()
Try
_windream = New ClassWindream_allgemein
- _windream.Init()
+ _windream.Create_Session()
If LogErrorsOnly = False Then ClassLogger.Add(" >> Windream initiiert", False)
Return True
Catch ex As Exception
@@ -1343,11 +1343,11 @@ Public Class frmValidator
aktivesDokument = _windream.oSession.GetWMObjectByPath(WMEntity.WMEntityDocument, Document_Path.Substring(2))
Catch ex1 As Exception
ClassLogger.Add("Fehler bei 2. Versuch windream-Objekt: " & ex1.Message)
- errmessage = "Es besteht ein Problem beim Anmelden an windream - Bitte wenden Sie sich an Digital Data!"
+ errmessage = "1-Es besteht ein Problem beim Anmelden an windream - Bitte wenden Sie sich an Digital Data!"
_err1 = True
End Try
Else
- errmessage = "Es besteht ein Problem beim Anmelden an windream - Bitte wenden Sie sich an Digital Data!"
+ errmessage = "2-Es besteht ein Problem beim Anmelden an windream - Bitte wenden Sie sich an Digital Data!"
_err1 = True
End If
If _err1 = True Then