"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

winxp: find out aktive user!

x3 03.12.2004 - 07:08 1636 12
Posts

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
also in win2k finde ich den eingelogten user eigentlich ganz einfach raus!
Code: PHP
$ipaddress = $_SERVER["REMOTE_ADDR"];
$nbtstat = "nbtstat -A ". $ipaddress;
exec ($nbtstat,$result);
foreach ($result as $row)
{
       if (strpos($row,"<03>")) $username = strtok($row," ");
}
den der dos befehl nbtstat -A ipadresse liefert mir in win2k, den zur zeit eingelogten user !
jedoch bei winxp nicht mehr!
gibt es einen anderen befehl wie man den eingelogten user herrausfinden kann, das dann auch in xp geht!
oder gibt es vl einen eigenen befehl in winxp?


tia

edit:
falls es eher in operating systems gehört, plz verschieben!
bin nämlich grad draufgekommen das es eher da rein gehört (da ja eigentlich ein winspezifischer befehl gesucht ist)!
aber vl gibt es ja auch eine andere programmiertechnische lösung
Bearbeitet von x3 am 03.12.2004, 07:11

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
soll das script jetzt auf einem remote-rechner laufen oder lokal?

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
:confused:
falls ich dich richtig verstehe:
das script läuft am server!
ich check am anfang die ip des users und füge sie dann dem dos befehl hinzu, und führe diesen dann am server aus!
oder meinst was anderes!

watchout

Legend
undead
Avatar
Registered: Nov 2000
Location: Off the grid.
Posts: 6845
neinein, das hatte ich schon gemeint - nur wäre bei diesem befehl dein server eigentlich ein client, deswegen habe ich remote geschrieben

auf jeden fall muss unter XP imho für die funktion irgendein service laufen...

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
gibt es irgendeine andere möglichkeit unter xp den aktiven user herraus zu finden?

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
Hab leider momentan keine XP maschine zum testen in greifbarer nähe,.. aber kopier mal nbtstat.exe von win2k => winxp vielleicht funzt das,..

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
das problem ist, das ich das nicht einfach mal so bei 350 leuten machen kann ;)

es soll nämlich der username automatisch ausgelesen werden (was er auch bei allen win2k benutzern macht) und somit kein login erfordert wird! (bequemer für alle user)!
zz ist in der firma noch win2k das standard, jedoch ist winxp gerade in testbetrieb, und soll im februar oder märz std werden!
jedoch soll dann die bequemheit der seite nicht verloren gehen!
und dann zu allen usern gehen und die exe austauschen ist auch keine lösung ;) (versteht sich, oder?)

that

Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
Zitat von x3
das problem ist, das ich das nicht einfach mal so bei 350 leuten machen kann ;)

es soll nämlich der username automatisch ausgelesen werden (was er auch bei allen win2k benutzern macht) und somit kein login erfordert wird! (bequemer für alle user)!
zz ist in der firma noch win2k das standard, jedoch ist winxp gerade in testbetrieb, und soll im februar oder märz std werden!
jedoch soll dann die bequemheit der seite nicht verloren gehen!
und dann zu allen usern gehen und die exe austauschen ist auch keine lösung ;) (versteht sich, oder?)

ähm blöde frage reicht nicht echo %username%

eXus

WTO-Gegner
Avatar
Registered: Jun 2002
Location: Pregarten`OÖ
Posts: 830
post von x3 (bin bei eXus :))

Zitat von that
http://www.sysinternals.com/ntw2k/f...sloggedon.shtml
thx ich glaub das wird genau das richtige

Zitat von Moesli
ähm blöde frage reicht nicht echo %username%
sry, aber wenn das am server ausgeführt wird, kommt immer der logon vom server (afaik), bringt also genau nix :)

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
Zitat von eXus
post von x3 (bin bei eXus :))

sry, aber wenn das am server ausgeführt wird, kommt immer der logon vom server (afaik), bringt also genau nix :)

achso ich hab mir gedacht, die clients starten den script vom Server aus,.. *sorry* naja Hauptsache du hast jetzt nach was du gesucht hast,..

that

Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338
Sauber wäre eine anständige NTLM Authentication, aber damit habe ich keine Erfahrung.

x3

† 18.03.2006
Avatar
Registered: Jan 2003
Location: lnz/(hgb)
Posts: 1480
big thx
genau das war es nun wirklich :)

falls es mal wer brauchen sollte, hier meine lösung:
Code: PHP
$psloggedon = "psloggedon \\\\\\\".$COMNAME;
exec ($psloggedon,$result);
foreach($result as $row)
{
	if(strpos($row,"<Unknown> ".$DOMAIN."\\\\"))
	{
		$usernamef= strtok($row,"\\\\");
		while ($usernamef)
		{
			$usernamef = strtok ("\\\\");
			if($usernamef!=NULL)
			{	$username=$usernamef;
				$username = strtoupper($username);
			}
		} 
	}
}
Bearbeitet von x3 am 07.12.2004, 09:42
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz