Ich bastle momentan mit der HTTP DLL herum und wollte nun abfragen, ob eine Online-Datei überhaupt existiert bzw. ob eine Verbindung zum Internet besteht. Hat jemand eine Ahnung, wie man das prüfen kann?
HTTP DLL prüfen, ob Datei existiert
- GM 8
-
-
Hey, hatte schonmal so eine ähnliche oder gleiche Frage

schau mal hier:
HTTP DLL Thread
Wenn du dir das ab meiner ersten Frage durchliest wirst du alle wichtige kennen.
Sind so ca. 10 Einträge die du lesen müsstest, da frag ich auch wie so'n bekloppter Esel
LG Lucke.@7rust-dev -
Gut, ich bin eben erst aufgestanden und habe vielleicht noch etwas auf den Augen, aber ich erkenne da keine Antwort auf meine Frage, wie ich prüfen kann, ob eine Verbindung oder eine bestimmte Datei auf dem Server existiert.
-
Also ne internet verbindung konnte man mit
if http_request('www.google.de') {Internet Ja} else {Internet Nein}
müsste so ähnlich aussehen..
-
Wenn das so oder so ähnlich bei mir funktionieren würde, hätte ich nicht gefragt.
-
So müsste es eigentlich klappen.
file_exists(fname) Gibt zurück, ob die Datei mit dem angegebenen Namen existiert (true) oder nicht (false).
file_delete(fname) Löscht die Datei mit dem angegebenen Namen.
file_rename(oldname,newname) Benennt die Datei mit dem Namen oldname in newname.
file_copy(fname,newname) Kopiert die Datei namens fname in newname.
directory_exists(dname) Gibt zurück, ob das angegebene Verzeichnis existiert oder nicht.
directory_create(dname) Erstellt ein Verzeichnis mit dem angegebenen Namen (inklusive dem Pfad), falls es nicht existiert.
file_find_first(mask,attr) Gibt den Namen der ersten Datei zurück, die mit der Maske und den Attributen übereinstimmt. Existiert keine solche Datei, wird ein Leerstring zurückgegeben. Die Maske kann einen Pfad und Auslassungszeichen enthalten, z.B. "C:\Temp\*.doc". Die Attribute geben die zusätzlichen Dateien an. (Die normalen Dateien werden also immer zurückgegeben, wenn sie mit der Maske übereinstimmen). Folgende Konstanten
Deutsche GameMaker-Hilfe@7rust-dev -
-
Aber durch die HTTP DLL schaut der doch im Internet nach der Datei, oder habe ich da was falsch verstanden im Thread ?
@7rust-dev -
Ähm, die dll bietet halt nur neue Funktionen. Dll's können in der regel nichts an bestehenden funktionen ändern. Außer sie werden durch skripte ersetzt, was in diesem fall nicht so ist.
Http_request geht, aber die funktion gibt den tatsächliche Inhalt der Datei zurück. Also am besten lädst du auf deinen Server eine Datei hoch die nur ein Wort enthält oder so und fragst dann mit http_request(host,file) ob das Ergebnis mit dem Wort übereinstimmt. In der Hilfe steht: Im Fehlerfall wird eine lehre zeichnekette zurück gegeben, also wenn "" rauskommt ist kein Internet da... -
Also ich hatte es mit der DLL geschafft ne Datei auszulesen, runterzuladen oder sie zu checken (ob sie existiert oder sonst was).
Aber wenn das doch nicht klappt, nehm ich meinen Post wieder zurück.
Bei mir liefs, bin mir aber nicht mehr sooo sicher wie es war.@7rust-dev -
-
Man könnte sich auch mal die Hilfedatei der Http dll anschauen, da gibts
die nette Funktion http_get_status(); die den Rückgabewert des letzten
Http Requests zurückgibt. Wenn da 404 drinsteht, dann konnte die Datei
auf dem Server nicht gefunden werden. (Weitere Rückgabecodes findet man
bei Wikipedia)
Gruß, Spellmaker.
___________________________________________________________
Beware of wild pointers______Hinweis für Allergiker: Kann Spuren von Ironie enthalten_____ -
@ Dragongamer "Keine Ahnung"
...aber damals hatte ich die Funktionen. Bin mir aber wirlklich nicht mehr sicher :' " @7rust-dev -
Spellmaker schrieb:
Man könnte sich auch mal die Hilfedatei der Http dll anschauen, da gibts
die nette Funktion http_get_status(); die den Rückgabewert des letzten
Http Requests zurückgibt. Wenn da 404 drinsteht, dann konnte die Datei
auf dem Server nicht gefunden werden. (Weitere Rückgabecodes findet man
bei Wikipedia)
Gruß, Spellmaker.
Autsch... hast recht. Mit http_request frage ich nach einer Datei. Mit "if http_get_status() = 200" schaue ich dann, ob der Versuch erfolgreich war. Scheint so weit zu funktionieren, vielen Dank!
-
Benutzer online 1
1 Besucher



