Umgebungsvariablen

This commit is contained in:
ms
2025-03-20 10:03:27 +01:00
parent 4993a243c6
commit 0e5472a0f8
4 changed files with 70 additions and 47 deletions

1
Main.Designer.vb generated
View File

@@ -106,7 +106,6 @@ Partial Class TSUserReporter
Me.btnTest.TabIndex = 4 Me.btnTest.TabIndex = 4
Me.btnTest.Text = "Test" Me.btnTest.Text = "Test"
Me.btnTest.UseVisualStyleBackColor = True Me.btnTest.UseVisualStyleBackColor = True
Me.btnTest.Visible = False
' '
'Button1 'Button1
' '

77
Main.vb
View File

@@ -15,6 +15,7 @@ Public Class TSUserReporter
Dim ThinClient As String Dim ThinClient As String
Dim isTS As Boolean = False Dim isTS As Boolean = False
Dim ID As String = "" Dim ID As String = ""
Dim AutoUpdate As Boolean = True
Private Sub TSUserReporter_Load(sender As Object, e As EventArgs) Handles MyBase.Load Private Sub TSUserReporter_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.Visible = False Me.Visible = False
@@ -26,7 +27,7 @@ Public Class TSUserReporter
FillLabel() FillLabel()
ID = StartTime.ToString("dd.MM HH:mm:ss") & cRes.LocalUser.BenutzeranmeldeName ID = StartTime.ToString("yyyy.MM.dd HH:mm:ss ") & cRes.LocalUser.BenutzeranmeldeName
LogLogOn() LogLogOn()
End Sub End Sub
@@ -36,9 +37,12 @@ Public Class TSUserReporter
Sub Routine() Sub Routine()
Try Try
cRes.LocalUser.FillWithLoggedOnUser(True) cRes.LocalUser.FillWithLoggedOnUser(True, "LDAP://DC=VERAG,DC=OST,DC=DMN")
' MsgBox("1")
cRes.LocalTeamviewerID = getregkey() cRes.LocalTeamviewerID = getregkey()
' MsgBox("2")
cRes.LocalDomUser.getDomUserByBenutzerAnmeldename(Environment.UserDomainName, Environment.UserName) cRes.LocalDomUser.getDomUserByBenutzerAnmeldename(Environment.UserDomainName, Environment.UserName)
'MsgBox("3")
isTS = cRes.LocalUser.Hostname Like "TS*" isTS = cRes.LocalUser.Hostname Like "TS*"
'isTS = True 'isTS = True
@@ -51,7 +55,7 @@ Public Class TSUserReporter
CheckAutoLogOffAndIfthenAutoLogOff() CheckAutoLogOffAndIfthenAutoLogOff()
End If End If
Catch ex As Exception Catch ex As Exception
'MsgBox(ex.Message) MsgBox("Routine:" & ex.Message)
End Try End Try
End Sub End Sub
@@ -181,21 +185,29 @@ Public Class TSUserReporter
End Sub End Sub
Private Sub UpdateTimer_Tick(sender As Object, e As EventArgs) Handles UpdateTimer.Tick Private Sub UpdateTimer_Tick(sender As Object, e As EventArgs) Handles UpdateTimer.Tick
Routine() If AutoUpdate = True Then
Routine()
End If
End Sub End Sub
Private Sub btnTest_Click(sender As Object, e As EventArgs) Handles btnTest.Click Private Sub btnTest_Click(sender As Object, e As EventArgs) Handles btnTest.Click
'If LoadDefaultPrinter(cRes.LocalUser.Hostname) Then Dim PrinterShortName As String = ""
' SetDefaultPrinter() For Each printer As String In System.Drawing.Printing.PrinterSettings.InstalledPrinters
' MsgBox(Drucker) Dim position As Integer = printer.LastIndexOf("\")
'End If If position > 0 Then
printer = printer.Substring(position + 1)
End If
PrinterShortName &= printer & vbCrLf
Next
MsgBox(PrinterShortName)
End Sub End Sub
Function SetUserEnviroment() Function SetUserEnviroment()
Try Try
Environment.SetEnvironmentVariable("PC_SERVER", "my.pbxcloud.at", EnvironmentVariableTarget.User) Environment.SetEnvironmentVariable("PC_SERVER", Nothing, EnvironmentVariableTarget.User)
Environment.SetEnvironmentVariable("PC_USER", Nothing, EnvironmentVariableTarget.User) Environment.SetEnvironmentVariable("PC_USER", Nothing, EnvironmentVariableTarget.User)
Environment.SetEnvironmentVariable("timasID", cRes.LocalUser.TimasID, EnvironmentVariableTarget.User) Environment.SetEnvironmentVariable("timasID", cRes.LocalUser.TimasID, EnvironmentVariableTarget.User)
' Environment.SetEnvironmentVariable("PC_USER", cRes.LocalDomUser.mit_username & "@verag", EnvironmentVariableTarget.User) ' Environment.SetEnvironmentVariable("PC_USER", cRes.LocalDomUser.mit_username & "@verag", EnvironmentVariableTarget.User)
@@ -211,31 +223,7 @@ Public Class TSUserReporter
Public Function LoadDefaultPrinter(ByVal Hostname As String) Public Function LoadDefaultPrinter(ByVal Hostname As String)
Dim PrintINI As String = "" Dim PrintINI As String = ""
'If isTS Then
' PrintINI = "C:\Users\" & cRes.LocalUser.Username & "\Documents\AVISO_OPTIONS.txt"
' Try
' Dim lines = IO.File.ReadAllLines(PrintINI)
' Dim colCount = lines.First.Split(":"c).Length
' For Each line In lines
' Dim objFields = From field In line.Split(":"c)
' 'Select Case objFields(0).ToString
' ' Case Benutzername
' If String.Compare("PRINTER", objFields(0).ToString, True) = 0 Then
' Drucker = objFields(1).ToString
' '_ConString = objFields(2).ToString
' Return True
' Exit Function
' End If
' ' End Select
' Next
' Return False
' Catch ex As Exception
' ' MsgBox("Fehler beim Lesen TSAnmeldung.ini: " & vbCrLf & ex.Message)
' End Try
' Else
PrintINI = sNetlogon & "\ClientDrucker.ini" PrintINI = sNetlogon & "\ClientDrucker.ini"
Printer.Clear() Printer.Clear()
Try Try
@@ -248,7 +236,15 @@ Public Class TSUserReporter
'Select Case objFields(0).ToString 'Select Case objFields(0).ToString
' Case Benutzername ' Case Benutzername
If String.Compare(Hostname, objFields(0).ToString, True) = 0 Then If String.Compare(Hostname, objFields(0).ToString, True) = 0 Then
Dim p As New Drucker(objFields(1).ToString, objFields(2).ToString) Dim printername As String = objFields(1).ToString
Dim position As Integer = printername.LastIndexOf("\")
If position > 0 Then
printername = printername.Substring(position + 1)
End If
Dim p As New Drucker(printername, objFields(2).ToString)
Printer.Add(p) Printer.Add(p)
'_ConString = objFields(2).ToString '_ConString = objFields(2).ToString
' Return True ' Return True
@@ -277,10 +273,21 @@ Public Class TSUserReporter
End Function End Function
Public Function SetDefaultPrinter() Public Function SetDefaultPrinter()
Dim sp As String = ""
For Each p As Drucker In Printer For Each p As Drucker In Printer
If p.Druckertype = "" Or p.Druckertype = "Standard" Then If p.Druckertype = "" Or p.Druckertype = "Standard" Then
''ip = installed printer
''sp = standard printer
For Each ip As String In System.Drawing.Printing.PrinterSettings.InstalledPrinters
If ip.LastIndexOf(p.Druckername, StringComparison.OrdinalIgnoreCase) > 0 Then
sp = ip
End If
Next
Standarddrucker = p Standarddrucker = p
My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows", "Device", p.Druckername) My.Computer.Registry.SetValue("HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows", "Device", sp)
ElseIf p.Druckertype = "Bon" Then ElseIf p.Druckertype = "Bon" Then
Bondrucker = p Bondrucker = p
ElseIf p.Druckertype = "Niederlassung" Then ElseIf p.Druckertype = "Niederlassung" Then

View File

@@ -27,18 +27,31 @@ Public Class cBenutzer
Function FillWithLoggedOnUser(Optional ByVal dcabfrage As Boolean = False, Optional ByVal LDAPa As String = "") '"LDAP://DC=VERAG,DC=OST,DC=DMN") Function FillWithLoggedOnUser(Optional ByVal dcabfrage As Boolean = False, Optional ByVal LDAPa As String = "") '"LDAP://DC=VERAG,DC=OST,DC=DMN")
Try Try
userPrincipalName = System.DirectoryServices.AccountManagement.UserPrincipal.Current.UserPrincipalName userPrincipalName = System.DirectoryServices.AccountManagement.UserPrincipal.Current.UserPrincipalName
Name = System.DirectoryServices.AccountManagement.UserPrincipal.Current.Name Name = System.DirectoryServices.AccountManagement.UserPrincipal.Current.Name
Hostname = Environment.MachineName Hostname = Environment.MachineName
Catch
Catch ex As Exception
MsgBox("FillWithLoggedOnUser:" & ex.Message)
End Try End Try
Domäne = System.DirectoryServices.ActiveDirectory.Domain.GetCurrentDomain.ToString Domäne = System.DirectoryServices.ActiveDirectory.Domain.GetCurrentDomain.ToString
BenutzeranmeldeName = Environment.UserDomainName & "\" & Environment.UserName BenutzeranmeldeName = Environment.UserDomainName & "\" & Environment.UserName
Username = Environment.UserName Username = Environment.UserName
If dcabfrage = True Then If dcabfrage = True Then
'Class1.DebugText = userPrincipalName & LDAPa Try
FillFromDC(userPrincipalName, "userPrincipalName", LDAPa) 'Class1.DebugText = userPrincipalName & LDAPa
FillTimasID() FillFromDC(userPrincipalName, "userPrincipalName", LDAPa)
FillTimasID()
Catch ex As Exception
MsgBox("dcabfrage: " & ex.Message)
End Try
End If End If
End Function End Function
@@ -127,13 +140,17 @@ Public Class cBenutzer
End Function End Function
Function FillTimasID() Function FillTimasID()
Dim ds As New DataSet Try
cSQL.SQL2DS("SELECT mit_timasID FROM ADMIN.dbo.tblMitarbeiter where mit_AliasAD_Username = '" & Me.sAMAccountName & "'", ds) Dim ds As New DataSet
If ds.Tables.Count > 0 Then cSQL.SQL2DS("SELECT mit_timasID FROM ADMIN.dbo.tblMitarbeiter where mit_AliasAD_Username = '" & Me.sAMAccountName & "'", ds)
If ds.Tables(0).Rows(0).Item(0) > 0 Then If ds.Tables.Count > 0 Then
Me.TimasID = ds.Tables(0).Rows(0).Item(0) If ds.Tables(0).Rows(0).Item(0) > 0 Then
Me.TimasID = ds.Tables(0).Rows(0).Item(0)
End If
End If End If
End If Catch ex As Exception
' MsgBox("FillTimasID: " & ex.Message)
End Try
End Function End Function

View File

@@ -108,7 +108,7 @@ Public Class cDomUser
Next Next
Catch ex As Exception Catch ex As Exception
'MsgBox("getDomUserByBenutzerAnmeldename" & Dom & vbCrLf & ds.Tables(0).Rows.Count & Username & vbCrLf & ex.Message) MsgBox("getDomUserByBenutzerAnmeldename" & Dom & vbCrLf & ds.Tables(0).Rows.Count & Username & vbCrLf & ex.Message)
End Try End Try
' MsgBox("hier") ' MsgBox("hier")