Alternative zu PING
- Elektrolurch
- Beiträge: 168
- Registriert: 11.10.2007 16:48
- Wohnort: 49°26'51.46"N - 8°59'49.06"E
- Kontaktdaten:
Alternative zu PING
Hi all
Ich hätte da mal wieder eine Frage.
Ich habe vor in einem Netzwerk nach der vorhandenen IP zu suchen um ein Gerät zu lokalisieren.
Mein Ansatz war der, ansteigend an die IP's ein Ping zu senden und dann die Antwort auszuwerten.
Klappt auch
Antwort von = gut
Zeitüberschreitung = schlecht.
Nun habe ich das Programm Zuhause weiterbearbeitet und es klappt nicht mehr, weil wegen des Routers andere Antworten zurück kommen.
Antwort von = gut
Antwort von .....Zielhost nicht erreicht = schlecht
Da ich mein Programm gern universell einsetzen möchte suche ich nach einer besseren Lösung, als den Abfragemodus zu erweitern.
Hat jemand eine Idee ?
Bye Andre
Ich hätte da mal wieder eine Frage.
Ich habe vor in einem Netzwerk nach der vorhandenen IP zu suchen um ein Gerät zu lokalisieren.
Mein Ansatz war der, ansteigend an die IP's ein Ping zu senden und dann die Antwort auszuwerten.
Klappt auch
Antwort von = gut
Zeitüberschreitung = schlecht.
Nun habe ich das Programm Zuhause weiterbearbeitet und es klappt nicht mehr, weil wegen des Routers andere Antworten zurück kommen.
Antwort von = gut
Antwort von .....Zielhost nicht erreicht = schlecht
Da ich mein Programm gern universell einsetzen möchte suche ich nach einer besseren Lösung, als den Abfragemodus zu erweitern.
Hat jemand eine Idee ?
Bye Andre
Such doch einfach nach beidem!Würde auch mit der RegExp-Library gehen. Aber diese Möglichkeit sollte für dich ausreichen, sofern ich dich richtig verstanden habe.
Code: Alles auswählen
If FindString(String$, "Antwort von", 1)
Debug "neues Gerät gefunden"
ElseIf FindString(String$, "Zeitüberschreitung", 1) Or FindString(String$, "Zielhost nicht erreicht", 1)
Debug "kein neues Gerät gefunden"
EndIf
PB 4.30
Code: Alles auswählen
Macro Happy
;-)
EndMacro
Happy End
- Elektrolurch
- Beiträge: 168
- Registriert: 11.10.2007 16:48
- Wohnort: 49°26'51.46"N - 8°59'49.06"E
- Kontaktdaten:
Hi Andi51
Nein leider wollte ich das nicht so.
Eine erweiterte Abfrage gefällt mir leider nicht.
Denn welche Antworten sind noch möglich, bei geänderter Konstellation.
Antworten in Englisch ???
Ich denke mit dem Ping Spiel bin ich auf dem Holzweg.
Meine Suche im CodeArchiv erbracht einen Erfolg.
Dort gibt es ein Programm Namens "GetLAnList"
leider verstehe ich nicht, was da gemacht wird.
Die eigentliche Prozedure sieht wie folgt aus.
Vieleicht kann mir das ja jemand etwas zerbröseln und erklären.
Bye Andre
Nein leider wollte ich das nicht so.
Eine erweiterte Abfrage gefällt mir leider nicht.
Denn welche Antworten sind noch möglich, bei geänderter Konstellation.
Antworten in Englisch ???
Ich denke mit dem Ping Spiel bin ich auf dem Holzweg.
Meine Suche im CodeArchiv erbracht einen Erfolg.
Dort gibt es ein Programm Namens "GetLAnList"
leider verstehe ich nicht, was da gemacht wird.
Die eigentliche Prozedure sieht wie folgt aus.
Code: Alles auswählen
Procedure GetLANList()
IPResult.s
se101.SERVER_INFO_101
nStructSize = SizeOf(SERVER_INFO_101)
RetCode = NetServerEnum_(0, 101, @bufptr, #MAX_PREFERRED_LENGTH, @dwEntriesread, @dwTotalentries, #SV_TYPE_ALL, 0, @dwResumehandle)
If RetCode = #NERR_SUCCESS And RetCode <> #ERROR_MORE_DATA
For i = 0 To dwEntriesread - 1
CopyMemory( bufptr + (nStructSize * i),@se101, nStructSize)
Buffer.s=Space(512)
Result=WideCharToMultiByte_(#CP_ACP ,0,se101\lpszServerName,255,@Buffer.s,512,0,0)
IPResult = GetIPbyName (Buffer)
Message ("No : "+ Str(i+1) + " " + Buffer + " --> " + IPResult)
Next
Else
MessageRequester("Info","Failed",0)
EndIf
NetApiBufferFree_(bufptr)
SendMessage_(MMTextBox,$00B6,0,30)
EndProcedure
Vieleicht kann mir das ja jemand etwas zerbröseln und erklären.
Bye Andre
Es handelt sich um eine Api und das alles zu erklären wäre ein bisschen viel, wenn du dich mit Api gar nicht auskennen solltest.
Ansonsten hilft http://msdn.microsoft.com/en-us/library/aa370623.aspx weiter.
Ansonsten hilft http://msdn.microsoft.com/en-us/library/aa370623.aspx weiter.
- Elektrolurch
- Beiträge: 168
- Registriert: 11.10.2007 16:48
- Wohnort: 49°26'51.46"N - 8°59'49.06"E
- Kontaktdaten:
- Elektrolurch
- Beiträge: 168
- Registriert: 11.10.2007 16:48
- Wohnort: 49°26'51.46"N - 8°59'49.06"E
- Kontaktdaten:
Hi All
Ich habe mir mal Die Beschreibung für NetServerEnum_
reingezogen und auch durch "learning by doing" halbwegs verstanden.
Nun habe ich aber nochmal eine Frage zu dem GetLanList.
Wenn ich dieses ausführe kriege ich alle PC's die mit mir im LAN verbunden sind, soweit OK.
Nur hat mein PC noch eine WLAN Verbindung zu einem Musicserver, die wird leider nicht angezeigt.
Dieser Musicserver arbeitet gleichzeitig als Router für andere Geräte, die ebenfalls nicht angezeigt werden, obwohl sie für mich erreichbar sind.
Warum ?
Wie kann man das ändern?
Hat da jemand eine Idee ?
BYe Andre
Ich habe mir mal Die Beschreibung für NetServerEnum_
reingezogen und auch durch "learning by doing" halbwegs verstanden.
Nun habe ich aber nochmal eine Frage zu dem GetLanList.
Wenn ich dieses ausführe kriege ich alle PC's die mit mir im LAN verbunden sind, soweit OK.

Nur hat mein PC noch eine WLAN Verbindung zu einem Musicserver, die wird leider nicht angezeigt.

Dieser Musicserver arbeitet gleichzeitig als Router für andere Geräte, die ebenfalls nicht angezeigt werden, obwohl sie für mich erreichbar sind.
Warum ?
Wie kann man das ändern?
Hat da jemand eine Idee ?
BYe Andre
- Elektrolurch
- Beiträge: 168
- Registriert: 11.10.2007 16:48
- Wohnort: 49°26'51.46"N - 8°59'49.06"E
- Kontaktdaten:
Hi all
ich bin nun ein wenig weiter.
Mein Programm findet nun alle in meinem Netzwerk aktiven Geräte.
Der Scan läuft von 1 bis 255.
Warum zeigt mir das Programm bei 255 einen positives Ping?
Da ist eigentlich kein Gerät.
Das normale Ping bestätigt mir das Ergebnis.
Hat da jemand eine Erklärung dafür?
Bye Andre
ich bin nun ein wenig weiter.
Mein Programm findet nun alle in meinem Netzwerk aktiven Geräte.
Der Scan läuft von 1 bis 255.
Warum zeigt mir das Programm bei 255 einen positives Ping?
Da ist eigentlich kein Gerät.
Das normale Ping bestätigt mir das Ergebnis.
Hat da jemand eine Erklärung dafür?
Bye Andre
Wenn Du damit das letzte Byte der IP meinst handelt es sich bei 255 um ein Broadcast. Also an alle Teilnehmer.
FF
FF
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
- Elektrolurch
- Beiträge: 168
- Registriert: 11.10.2007 16:48
- Wohnort: 49°26'51.46"N - 8°59'49.06"E
- Kontaktdaten: