![]() |
url existiert?
hallo dpler!
ich suche eine Funktion mit der man gucken kann ob eine bestimmte url existiert, wenn zum beispiel der server down ist! bitte um shcnelle antwort! mein prog hängt sich imemr dnan auf! wenns geht mit idhttp oder urlmon! mr.unbekannt |
Re: url existiert?
|
Re: url existiert?
Du könntest auch probieren mit idhttp
Delphi-Quellcode:
eine datei von der URL runterzuladen. wenn das nicht klappt, ist der server down oder das Verzeichnis existiert nicht
procedure TForm1.Button1Click(Sender: TObject);
var fn: TFileName; fs : TFileStream; begin fn := 'C:\download.htm'; // Datei, in der gespeichert werden soll fs := TFileStream.Create(fn, fmCreate); // Übertragungsleitung für die Datei try try IdHTTP1.Get('http://www.google.de', fs); // Herunterladen der Datei, mit der die Domain // verknüpft ist, über den Kanal fs except end; finally FreeAndNil(fs); //den Kanal freigeben end; end; |
Re: url existiert?
Hi,
die Methode Head() prüft ohne Übertragung der Datei. Grüße vom marabu |
Re: url existiert?
ic h habe mir die 2 funktionne mal angeguckt (head und ping) ping is net so gut, weil könnte isch ja die ip ändern und head, hört sich zwar net shcelcht an, weiß aber net wie ich die anwenden soll, weil ich doch das mit einer if then anweisung mahcne muss, als wenn die url besteht dann weitermachen! bite um schnelle antwort!
|
Re: url existiert?
Um auf alle Eventualitäten gefasst zu sein musst du diesen Code noch etwas ausbauen:
Delphi-Quellcode:
marabu
// uses WinInet, idHTTP;
function UrlExists(sUrl: String; bAllowRedirects: Boolean = false): Boolean; begin with TidHTTP.Create(nil) do try HandleRedirects := bAllowRedirects; Head(sUrl); Result := Response.ResponseCode = HTTP_STATUS_OK; finally Free; end; end; |
Re: url existiert?
danke erstmal für die antwort, werde sie nacher mal testen, aber sieht gut aus!
|
Re: url existiert?
naja sieht gut aus, nur der sagt, wenn es nicht existiert readtmeout! und das muss ich noch irgendwie umlenken können!
|
Re: url existiert?
das mit dem readtimout kriege ich net hin, also wenn die siete net da ist, sagt er readtimeout!
|
Re: url existiert?
Tach...
Die eigentliche Frage war ja, ob die URL tatsächlich existiert .. und das kannst kannst du nur über einen DNS - Sever herausfinden. Ping usw. ist Unsinn denn das funzt eben nicht wenn der Server down is! MfG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz