Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Ping per WinAPI

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Thorben



Anmeldungsdatum: 26.04.2005
Beiträge: 173
Wohnort: SH

BeitragVerfasst am: 15.11.2005, 14:13    Titel: Ping per WinAPI Antworten mit Zitat

Hey!

Hat jemand ne Ide wie man per WinAPI einen Ping ausführen kann,
oder wie man festellen kann ob ein Computer im Netzwerk ist oder nicht.

thx Thorben
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 15.11.2005, 21:24    Titel: Antworten mit Zitat

Der folgende VB Code geht mit ein paar kleinen Änderungen auch in FreeBASIC: http://www.activevb.de/tipps/vb6tipps/tipp0329.html lächeln
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Thorben



Anmeldungsdatum: 26.04.2005
Beiträge: 173
Wohnort: SH

BeitragVerfasst am: 21.11.2005, 15:03    Titel: Antworten mit Zitat

Jor Danke mal sehen ob ich das hinbekomm.
Hät nicht gedacht das das so aufwendig ist.happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
PeterHarder



Anmeldungsdatum: 27.03.2005
Beiträge: 45
Wohnort: Deutschland

BeitragVerfasst am: 27.11.2005, 12:51    Titel: Antworten mit Zitat

Thorben hat Folgendes geschrieben:
Hät nicht gedacht das das so aufwendig ist.happy


Das ist überhaupt nicht aufwendig, du brauchst dazu nur eine Funktion aus der "WinInet.dll" die da lautet "InternetCheckConnection".

Geb' mal bei Google msdn internetcheckconnection ein, dann findest du sie.

Hier ein Beispiel-Code aus GFA-Basic:

Code:
Declare FunctionA InternetCheckConnection Lib "wininet.dll" _
  (ByVal url As String, _
  ByVal dwFlags As Long, _
  ByVal dwReserved As Long) As Bool

MsgBox InternetCheckConnection("http://www.google.de", 1, 0)


Das ist schon die komplette Abfrage, mehr ist das nicht. Wenn du es nach FreeBasic umschreibst, dann muss wohl das "A" hinter "Function" weg, dafür ein "A" bei "InternetCheckConnection" anhängen, wenn ich nicht irre. Außerdem geht das "As Bool" unter freeBASIC nicht (oder inzwischen doch?), stattdessen Long verwenden. Aber egal, du wirst es schon hinbekommen. lächeln

Ich glaub', du kannst damit auch IP-Nummern abfragen, forsch' dafür aber lieber nochmal im Internet nach.

Schönen Sonntag noch!

Liebe Grüße

Peter
_________________
Deutsche Mailingliste für freeBASIC: de.groups.yahoo.com/group/free-basic.
Zum Anmelden einfach eine leere E-Mail an free-basic-subscribe@yahoogroups.de senden.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 27.11.2005, 13:15    Titel: Antworten mit Zitat

Hallo.

Ich glaube, dein beispiel prüft nur, ob eine verbindung besteht. Der Ping gibt aber an, wie groß die verzögerung zum server(bzw. internetseite, blabla) ist. Weiß ich aber auch nicht so genau.

Michael

EDIT: Wikipedia

Etwas weiter unten ist ein beispiel, wie ping normal aussieht. Ich weiß nicht, ob man sowas auch mit deinem Beispiel machen kann.

EDIT²:
Code:

screen 12

dim start as double
Declare Function InternetCheckConnection Lib "wininet.dll" ALIAS "InternetCheckConnectionA"_
  (ByVal url As String, _
  ByVal dwFlags As Long, _
  ByVal dwReserved As Long) As long

for i = 1 to 10
   start=timer
   InternetCheckConnection("http://www.google.de", 1, 0)
   print using "#.###";timer-start
next i
sleep


Die werte sind nicht ganz gleich mit dem ping in der eingabeaufforderung. Ausserdem sind nicht alle ungefähr gleich.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
oiermann



Anmeldungsdatum: 28.12.2005
Beiträge: 90
Wohnort: Leutkirch

BeitragVerfasst am: 02.01.2006, 12:24    Titel: Antworten mit Zitat

Wenn ich den letzten code (den von programmierer) ins freebasic abtipp, kann ich ihn compilieren und auch starten nur dann kommt eine fehlermeldung:
Die Anwendung wird aufgrund eines ungültigen vorgangs geschlossen

an was kann das liegen?

//edit: also ich habs jetzt an mehreren pcs ausprobiert: es funktioniert nur bei einem (xp) und bei 4 anderen (win98) nicht, ist das ein "98-inkompatibles" program???
_________________
Ich bin keine Signatur, ich putz hier nur
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Windows-spezifische Fragen Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz