lamerking
Goto Top

Aktuell angemeldeten Benutzer in Datei schreiben (Nachname, Vorname)

Hallo zusammen,

ich suche eine Möglichkeit den aktuell angemeldeten Windowsbenutzer nach dem Format Nachname, Vorname in eine Datei (z.B. Textdatei) zu schreiben.
Wahrscheinlich ist die einzigste Möglichkeit, die Infos aus dem AD auszulesen, oder?

Hat jemand einen Lösungsvorschlag für mich?

Danke schon mal.

Gruß
Tobias

Content-Key: 78479

Url: https://administrator.de/contentid/78479

Ausgedruckt am: 29.03.2024 um 11:03 Uhr

Mitglied: bastla
bastla 17.01.2008 um 23:29:24 Uhr
Goto Top
Hallo Lamerking!

Wahrscheinlich ist die einzigste Möglichkeit, die Infos aus dem AD auszulesen, oder?
Dafür würde ich auch plädieren - Umsetzung per VBScript etwa so:
Const strLog = "D:\UserLog.txt"  

Set objNetwork = WScript.CreateObject("WScript.Network")  
If strComp(objNetwork.UserDomain, objNetwork.ComputerName, vbTextCompare) <> 0 Then 'kein lokaler Account  
	Set fso = CreateObject("Scripting.FileSystemObject")  
	Set objUser = GetObject("LDAP://" & CreateObject("ADSystemInfo").UserName)  
	fso.OpenTextFile(strLog, 8, True).WriteLine objUser.sn & ", " & objUser.givenName  
End If

Grüße
bastla
Mitglied: Lamerking
Lamerking 18.01.2008 um 08:46:22 Uhr
Goto Top
Hallo,

super! Erst mal danke für deinen Vorschlag.

Leider steht in der ausgegeben Datei lediglich ein Komma drinne ;)
Hab mal testweise die Zeile "LDAP:" mit "LDAP:OU=users,DC=unser,DC=domänen,DC=name" ergänzt.
Leider kriegt ich da einen Fehler beim Ausführen des Skripts.

Hast du eine Ahnung, woran das liegen könnte?

Danke schon mal.

Gruß
Tobias
Mitglied: bastla
bastla 20.01.2008 um 01:03:05 Uhr
Goto Top
Hallo Lamerking!

Leider steht in der ausgegeben Datei lediglich ein Komma drinne ;)
Du bist sicher, dass für den entsprechenden Benutzer im AD Vor- und Zuname eingetragen sind? (Bei meinen Tests in 2 verschiedenen Domänen war das Ergebnis jeweils ok.)

Hab mal testweise die Zeile "LDAP:" mit "LDAP:OU=users,DC=unser,DC=domänen,DC=name" ergänzt.
Abgesehen davon, dass es "CN=users" heißen müsste ("OU" nur für selbst erstellte Organisationseinheiten), wäre, da es hier ja um einen bestimmten User geht, mit "LDAP://CN=Vollständiger Benutzername" zu beginnen, also:
Set objUser = GetObject("LDAP://CN=Vollständiger Benutzername,CN=users,DC=unser,DC=domänen,DC=name")  
Als Test (der genau das selbe Ergebnis - ab dem ersten "CN" - bringen müsste), kannst Du folgende Scriptzeile verwenden:
WScript.Echo CreateObject("ADSystemInfo").UserName  

Grüße
bastla
Mitglied: Lamerking
Lamerking 22.01.2008 um 08:39:03 Uhr
Goto Top
Peinlich, Peinlich

der Testbenutzer hatte natürlich keinen Vornamen und keinen Nachnamen eingetragen!!

Vielen Dank!!!!!
Hast mir super geholfen!!!!!