GetHostName() funktioniert.... seltsam?

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

M0rgenstern

Betreff: GetHostName() funktioniert.... seltsam?

BeitragFr, Jun 22, 2012 18:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute,

Mein Server und mein Client für den Chat laufen jetzt so ziemlich.
Jedoch habe ich noch ein seltsames Problem.
Undzwar: Wenn ein Client sich mit dem Server verbindet, dann soll der Nickname zuerst der PC-Name des Client sein.
Das mache ich folgendermaßen:
BlitzMax: [AUSKLAPPEN]
Local sNick:String = TNetwork.GetHostName(ClientStream().GetRemoteIP())


Wenn ich nun den Clienten auf einem anderen PC ausführe, dann bekomme ich jedoch immer nur den Namen des PCs auf dem der Server läuft (ClientStream() ist ein TTCPStream, der zwischen dem Server und dem Clienten liegt).
Das ganze funktioniert auch nicht, wenn ich GetLocalIP nutze.

Ich habe langsam die Befürchtung, dass TNetwork.GetHostName einfach immer den Namen meines Servers zurück gibt. Sehe ich das richtig?
Und wenn ja: Wie bekomme ich den PC-Namen des PCs heraus auf dem der Client läuft?

Lg, M0rgenstern

Xeres

Moderator

BeitragFr, Jun 22, 2012 18:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Macht auch Sinn, dass der Host immer der selbe ist, oder? Ich würde Username oder PC name aus den Environment variablen auslesen, dafür sind sie ja da:
Code: [AUSKLAPPEN]
Print(getenv_("UserName"))
Print(getenv_("UserDomain"))
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Jolinah

BeitragFr, Jun 22, 2012 18:25
Antworten mit Zitat
Benutzer-Profile anzeigen
GetHostName macht im Prinzip ein Reverse-DNS-Lookup. Aufgrund einer IP-Adresse wird im DNS-System nach einem Namen aufgelöst. Vermutlich werden aber auch Windows-Namen aufgelöst, bei lokalen IPs.

Versuch es mal einfach mit TNetwork.GetHostName(0). 0 steht normalerweise für den eigenen PC.

Edit: Oder wie Xeres sagt, das ist vermutlich auch performanter.

M0rgenstern

BeitragFr, Jun 22, 2012 20:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hey,
Vielen Dank. Hätte vielleicht sagen sollen, dass der Code da aus dem Server war.
Ich habs jetzt hinbekommen.
GetLocalIP() War korrekt. Ich hätte nur statt dem Client den Server kompilieren müssen. War wohl ziemlich verpeilt. -.-

Lg, M0rgenstern

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group