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

Printed on: April 25, 2024 at 07:04 o'clock

Member: bastla
bastla Jan 17, 2008 at 22:29:24 (UTC)
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
Member: Lamerking
Lamerking Jan 18, 2008 at 07:46:22 (UTC)
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
Member: bastla
bastla Jan 20, 2008 at 00:03:05 (UTC)
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
Member: Lamerking
Lamerking Jan 22, 2008 at 07:39:03 (UTC)
Goto Top
Peinlich, Peinlich

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

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