Refactor session logout logic into helper method

Extracted duplicated session logout code into a new private method, LogoutCurrentSession. This method is now used in both GetWMSessionAsUser and GetWMSession to improve code reuse and maintainability. Exception handling for session logout remains silent to avoid issues with already-terminated sessions.
This commit is contained in:
OlgunR
2026-04-29 15:47:04 +02:00
parent e4d6734b03
commit 018cbc5ae0

View File

@@ -49,7 +49,20 @@ Public Class ClassWindream_allgemein
' Process.GetCurrentProcess.Kill() ' Process.GetCurrentProcess.Kill()
End If End If
End Sub End Sub
Private Sub LogoutCurrentSession()
If Not IsNothing(CURRENToWMSession) Then
Try
CURRENToWMSession.Logout()
Catch
' ignorieren Session war evtl. schon tot
End Try
CURRENToWMSession = Nothing
End If
End Sub
Public Function GetWMSessionAsUser(Domain, ServerName, UserName, Password) Public Function GetWMSessionAsUser(Domain, ServerName, UserName, Password)
LogoutCurrentSession()
Dim SessionAsUser Dim SessionAsUser
Dim aConnect, aUserId, aSession Dim aConnect, aUserId, aSession
On Error Resume Next On Error Resume Next
@@ -143,14 +156,7 @@ Public Class ClassWindream_allgemein
End Function End Function
Private Function GetWMSession() Private Function GetWMSession()
If Not IsNothing(CURRENToWMSession) Then LogoutCurrentSession()
Try
CURRENToWMSession.Logout()
Catch
' ignorieren Session war evtl. schon tot
End Try
CURRENToWMSession = Nothing
End If
Try Try
Try Try