Jump to content

per Script Username abfragen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

hi

 

mit einem vb script geht das so:

 

strComputer = "RemoteComputer"
Set objWMIService = GetObject("winmgmts:" _
   & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 
Set colComputer = objWMIService.ExecQuery _
   ("Select * from Win32_ComputerSystem")

For Each objComputer in colComputer
   Wscript.Echo objComputer.UserName
Next

 

wobei RemoteComputer der PC ist den du überprüfen willst

Link zu diesem Kommentar

Hallo,

 

Danke an mahn - das funktioniert recht gut

 

Alledings zwei Fragen

 

1.) VBScript ist aber im Moment noch Neuland bei mir (wird aber schon) - kann ich den ermittelten Usernamen mit einem anderen der sich gerade an Rechner 2 anmelden will vergliehen ? (da cconnect nicht mehr unter Windows 2003 läuft will ich mir was eigenes basteln um einen doppleten Login zu vermeiden - bei einer Handvoll Rechner und User sollte die Möglichkeit gehen).

 

2.) gibt es eine Möglickeit ohne VBS über Batchfile?

 

Kannst du mir vielleicht eine gute adresse oder literatur über vbs nennen die recht schnell und einfach zu verstehen ist ?

 

an schmchris

 

was genau meinst Du ?

 

Danke an alle

Link zu diesem Kommentar
Original geschrieben von Marco_AC kann ich den ermittelten Usernamen mit einem anderen der sich gerade an Rechner 2 anmelden will vergliehen ? [/b]

 

schreib doch einfach den usernamen beim einloggen am rechner A in eine Datenbank (oder in ein Textfile) und vergleiche beim anmelden, ob der username schon in der datenbank vorhanden ist.

beim abmelden löscht du einfach den eintrag.

 

 

 

 

Original geschrieben von Marco_AC

Kannst du mir vielleicht eine gute adresse oder literatur über vbs nennen die recht schnell und einfach zu verstehen ist ?

 

 

Ich weiß ja nicht wie gut du programmiertechnisch drauf bist, aber lade dir mal das runter: http://www.microsoft.com/downloads/details.aspx?FamilyId=01592C48-207D-4BE1-8A76-1C4099D7BBB9&displaylang=en

 

Ist meiner Meinung nach eine ganz gute Doku.

Link zu diesem Kommentar
  • 2 Wochen später...

Mahlzeit,

 

ich habe auch ein ähnliches problem! Die Lösung, die detzi hier geschrieben hat, ist eigentlic hschon des rätsels lösung für mich.

 

Aber wie genau kann ich in der Batch verarbeitung eingeben, dass er den %USERNAME% in eine DB auf einen anderen Rechenr im Netzwerk schreibt?

Gibt es hier auch eine Art INSERT INTO Möglichkeit?

 

Oder müsste ich das mit einen Anderen Script machen?

Irgendwelche denkanstöße für mich?

 

Gruß,

Knoffhoff

Link zu diesem Kommentar

Hallo,

 

ich kann mir eine Login-Script-Lösung vorstellen.

 

Mit PsLoggedOn aus den PsTools von Sysinternal.com werden die Anmeldungen am Server ausgelesen. Leider geht das nur für Rechner, nicht für die Domäne. Bei mehreren Servern müssen die einzeln abgefragt werden.

 

Dann erfolgt eine Auswertung mit Textiteration for /f.

 

Bei positiven Ergebnis wird der User mit Logout oder Logoff aus dem RK wieder abgemeldet.

 

Der ganze Prozess kann natürlich erst nach der Anmeldung geschehen. Aber das zwangsweise Ausloggen wird den Benutzern die "Lust" zur Doppelanmeldung nehmen.

 

Gruß

Edgar

Link zu diesem Kommentar

aha

soweit ist alles klar. kann dann einfach eine .bat datei erstellen mit folgendem inhalt:

 

++++++++++++++++++++++++++++++++++++++

if psloggedon username == testuser goto test

 

:test

xxxxx

goto END

 

:END

+++++++++++++++++++++++++++++++++++++++

 

sehe ich das richtig?

Aber was muß dann in der anweisung für :test stehen um z.B. den anmeldenamen in eine DB-Tabelle schreiben?

 

ich wollte halt für unsere Zentrale im Intranet eine Seite machen in der Sie anhand einer kleinen Grafik (grün und Rot) sehen können, ob ein Mitarbeiter ANgemeldet ist oder nicht bzw. ob er überhaupt in der Firma ist.

Link zu diesem Kommentar

Hallo,

 

nein, so geht das wohl nicht. Wäre mir neu.

 

Mit

 

psloggedon \\servername

 

wird eine Liste der logged user ausgegeben.

 

Diese kann man erst einmal eine Datei schreiben.

 

psloggedon \\servername > :\userlog.txt

 

 

Deren Inhalt kann so aussehen.

 


PsLoggedOn v1.31 - Logon Session Displayer
Copyright (C) 1999-2003 Mark Russinovich
Sysinternals - [url]www.sysinternals.com[/url]

Connecting to Registry of \\1fs-lubeca...

Users logged on locally:
    02.10.2004 14:31:16    LUBECA\Administrator

Users logged on via resource shares:
    06.10.2004 10:48:23    LUBECA\USER1
    06.10.2004 10:47:59    LUBECA\USER2
    06.10.2004 10:54:15    LUBECA\USER3
    06.10.2004 10:49:38    LUBECA\USER4
    06.10.2004 10:50:11    LUBECA\USER4
    06.10.2004 10:50:31    LUBECA\USER5
    06.10.2004 10:50:54    LUBECA\USER6
    06.10.2004 10:54:06    LUBECA\USER7
    06.10.2004 10:54:39    LUBECA\USER8

 

Die Liste muß nun zeilenweise ausgewertet werden.

 

Kennst Du dich mit Textiteration der For-Schleife aus?

 

for /f %%i in (c:\userlog.txt) do echo %%i

 

Die Schleife gibt den ersten Block jeder Zeile aus.

 

Das Besondere ist, die Schleife hält nicht an. Sie arbeitet bis zum Ende. Schreibt man die Ausgabe in eine Datei, steht darin nur der erste Block der letzten Zeile.

 

 

code]

for /f %%i in (c:\userlog.txt) do echo %%i > c:\dump.txt

 

In dump.txt steht:

 

06.10.2004

 

Mit der Blockoption Tokens und dem Wildcard * wird die ganze Zeile ausgegeben.

 

for /f "tokens=*" %%i in (c:\userlog.txt) do echo %%i > c:\dump.txt

 

06.10.2004 10:54:39 LUBECA\User8

 

Die Zeile besteht aus drei Blöcken.

Link zu diesem Kommentar

Alles klar, ich danke dir dafür.

dann werd ich mal gucken dass ich per task die .txt datei in die datenbank importiere und anschliessend stündlich ersetze.

 

Das sollte reichen.

 

textiteration? Textwiederholung?

also in sachen "batch-programmierung" bin ich völlig unwissend.

abegeshen von den standard befehlen.

 

for-schleifen kenn ich von java oder c.

Verstehe ich dich richtig, wenn du mir damit sagen willst, dass ich die liste in einer for schleife ständig nach "testuser" oder anderen inhalten/usernamen abfragen soll?

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...