AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi Server im Netz finden (LAN/Game)
Thema durchsuchen
Ansicht
Themen-Optionen

Server im Netz finden (LAN/Game)

Ein Thema von NookShar · begonnen am 8. Mär 2006 · letzter Beitrag vom 8. Mär 2006
Antwort Antwort
NookShar

Registriert seit: 13. Aug 2004
Ort: Windeck
10 Beiträge
 
Delphi 2005 Personal
 
#1

Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 16:41
Hallo,

ich habe folgendes Problem: Ich schreibe ein LAN Spiel und such gerade nach einer Möglichkeit alle Rechner im Netzwerk aufzulisten auf denen ein Server läuft. Alle anzupingen und ein Portcheck durchführen dauert ewig. Am besten brauch ich die IP und den Rechnername.

Also wenn wer Tips, Routine o.ä. bitte helfen!

Gruß NookShar
Ich kann, weil ich will, was ich muß!
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 16:57
Um anpingen und port-check wirst du nicht herumkommen. Aber du kannst diese aktion mittels mehrer Threads gleichzeitig für mehrere IP's durchführen lassen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
BenjaminH

Registriert seit: 14. Okt 2004
Ort: Freiburg im Breisgau
713 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 16:58
Ich denke ein Broadcast ist das richtige, auch wenn ich keine Ahnung hab, wie das funktioniert
Benjamin
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#4

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 16:59
vorschlag:

mach einen threaded portcheck ohne ping
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 16:59
jep oder einen UDP broadcast an die broadcast adresse im netzwerk
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
  Mit Zitat antworten Zitat
PierreB
(Gast)

n/a Beiträge
 
#6

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 17:03
Oder jeder aktivierte Server sendet seine Daten an eine Webseite o.a., dann hast du da alle parat und die Clients können sie ganz einfach abrufen.
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 17:15
Warum nicht den Client broadcasten und den Server zurückmelden lassen? Eleganter als IP-Scan...
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
NookShar

Registriert seit: 13. Aug 2004
Ort: Windeck
10 Beiträge
 
Delphi 2005 Personal
 
#8

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 17:42
okay, Thread + Ping hört sich ja schon ganz gut an. aber ich habe keine große Ahnung von Threads...

wie geht das genau. ich hab bis jetzt das hier:
Delphi-Quellcode:
TSearchThreadI = class(TThread)
  protected
    procedure Execute; override;
  end;
und im Execute dann eine schleife die alle 255 IPs im Netz durchgeht.
Aufgerufen wird das wie folgt: TSearchThreadI.Create(false);

wie könnte ich das denn machen um mehrere Threads laufen zu lassen die alle unterschiedliche IPs pingen, oder gar 255 threads für jede IP einen (wenn das möglich/sinnvoll ist) ??

Und wie geht das mit dem Broadcast?


Gruß Nookshar

@PierreB: soll ja in nem reinen LAN ohne Inet funktionieren
Ich kann, weil ich will, was ich muß!
  Mit Zitat antworten Zitat
Tubos

Registriert seit: 25. Feb 2004
Ort: Yspertal (Niederösterreich)
1.014 Beiträge
 
Delphi 7 Personal
 
#9

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 18:01
Zitat:
und im Execute dann eine schleife die alle 255 IPs im Netz durchgeht.
In einem lokalen Netzwerk können sich mehr als 255 Hosts befinden.

Lass einfach den Client einen Broadcast, also ein UDP-Paket an 255.255.255.255, schicken. Das geht mit den Indy-Komponenten ganz einfach.
Der Server horcht in einem Thread auf das entsprechende Paket und antwortet.
Lukas
  Mit Zitat antworten Zitat
NookShar

Registriert seit: 13. Aug 2004
Ort: Windeck
10 Beiträge
 
Delphi 2005 Personal
 
#10

Re: Server im Netz finden (LAN/Game)

  Alt 8. Mär 2006, 18:08
Zitat von Tubos:
Zitat:
und im Execute dann eine schleife die alle 255 IPs im Netz durchgeht.
In einem lokalen Netzwerk können sich mehr als 255 Hosts befinden.
stimmt, hast recht. Ich dachte jetzt nur an 192.168.0.x ^^

Zitat von Tubos:
Lass einfach den Client einen Broadcast, also ein UDP-Paket an 255.255.255.255, schicken. Das geht mit den Indy-Komponenten ganz einfach.
Der Server horcht in einem Thread auf das entsprechende Paket und antwortet.
und wie kann man mit den Indys einen solchen Broadcast durchführen, und wie muß der Thread im Server aussehen?
Ich kann, weil ich will, was ich muß!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz