DaSilva 10 Geschrieben 16. Januar 2008 Melden Geschrieben 16. Januar 2008 Wie kann ich den Computernamen und Benutzernamen aller angemeldeten Benutzer in eine Datei schreiben? Basis ist Windows 2003 Server. Danke.
XP-Fan 234 Geschrieben 16. Januar 2008 Melden Geschrieben 16. Januar 2008 Hallo, du kannst den Benutzer mit %username% und den PC mit %Computername% ansprechen. Das ganze als Startscript hinterlegt und Ausgabe in eine Freigabe des Servers umgelenkt.
DaSilva 10 Geschrieben 16. Januar 2008 Autor Melden Geschrieben 16. Januar 2008 Das zeigt mir aber nur den eigenen Login, nicht alle angemeldeten Benutzer- und Computernamen.
XP-Fan 234 Geschrieben 16. Januar 2008 Melden Geschrieben 16. Januar 2008 Hallo, das willst du doch oder ? Ist klar wenn du das auf deinem PC ausführst das deine Daten angezeigt werden. Mach das mal auf einem anderen PC ... Hast du eine Domäne zur Verfügung ?
DaSilva 10 Geschrieben 16. Januar 2008 Autor Melden Geschrieben 16. Januar 2008 Es handelt sich beim Server um einen Citrix Server. Bei diesem möchte alle angemeldeten Benutzer inkl. Computernamen angezeigt bekommen. Wie mein Login heißt ist mir ja klar.
XP-Fan 234 Geschrieben 16. Januar 2008 Melden Geschrieben 16. Januar 2008 Es handelt sich beim Server um einen Citrix Server. Die Infos kommen langsam ..... warum nicht gleich ? :o Reicht es dir wenn du per User eine cmd startest und anhand dieser auswerten kannst wer an diesem Tag von welchem Rechner sich angemeldet hat ? Ansonsten schau mal hier vorbei: PsLoggedOn LogonSessions
DaSilva 10 Geschrieben 16. Januar 2008 Autor Melden Geschrieben 16. Januar 2008 Beide Programme geben nicht den Computernamen aus :(
kalle10000 10 Geschrieben 25. Januar 2008 Melden Geschrieben 25. Januar 2008 Hi, ich habe mich damit auch mal befasst. Dieses Skript als .vbs abspeichern. Es funktioniert, wenn alle Firewalls richtig konfiguriert oder ausgeschaltet sind. Und dann auf dem Domänencontroller mit Adminrechten in der Konsole mit 'cscript Pfad >Datei.txt' starten. Teste es 'mal. Set objShell = CreateObject("WScript.Shell") Set objWshScriptExec = objShell.Exec("net view") 'Zum Abfangen der "net view"Ausgabe stdOut verwenden Set objStdOut = objWshScriptExec.StdOut 'gesamte "net view"-Ausgabe in strOutput speichern ... strOutput = objStdOut.ReadAll '... und in einzelne Zeilen zerlegen (am Zeilenende = vbCrLF splitten), die als Array gespeichert werden. 'aLines = Array("") aLines = Split(strOutput, vbCrLF) 'Variable für die Zusammenfassung initialisieren strResult = "" 'Schleife über alle einzelnen Zeilen For i = 0 To UBound(aLines) 'Wenn die Zeile mit "\\" beginnt, ... If Left(aLines(i), 2) = "\\" Then '... enthält sie ab Position 3 einen Rechnernamen. strCmp = Trim(Mid(aLines(i), 3)) On Error Resume Next strCompi = Split(strCmp, " ") strCmp = strCompi(0) 'Falls beim Abfragen des Computers ein Fehler eintritt, nicht abbrechen ... On Error Resume Next 'Ab dem zweiten gefundenen Rechner (wenn strResult also schon ein Ergebnis enthält) ... If strResult <> "" Then '... zunächst eine Zeilenschaltung und dann Computernamen und User hinzufügen. strResult = strResult & vbCrLF & strCmp & vbTab & UserName(strCmp) Else 'Beim ersten Eintrag ist die Zeilenschaltung nicht nötig. strResult = strCmp & vbTab & UserName(strCmp) End If 'Ab hier wieder bei einem Fehler abbrechen ... On Error Goto 0 End If Next 'Das Ergebnis in einer Form ausgeben, die auch den Aufruf aus einer Batchdatei ermöglicht: WScript.Echo strResult WScript.Quit Function UserName(strComputer) 'Abfrage des beim Funktionsaufruf übergebenen Computernamens per WMI Set objWMIService = GetObject("WinMgmts:\\" & strComputer & "\root\cimv2") Set colItems = objWMIService.ExecQuery( _ "SELECT * FROM Win32_ComputerSystem",,48) 'Auch wenn nur ein Computer abgefragt wird, ist das Ergebnis eine Aufzählung, 'deren einzelne Elemente mit "For Each" durchlaufen werden ... For Each objItem in colItems 'Den Usernamen als Eigenschaft auslesen und zwischenspeichern ... strUser = objItem.UserName Next '... und falls kein User angemeldet ist, Infotext erzeugen. If IsNull(strUser) Then strUser = "No User" 'Function-Ergebnis festlegen UserName = strUser End Function
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden