![]() |
Re: FTP-Server abfrage?
Ich hab keeine Ahnung :-D aber hauptsache es klappt. Ich hab jetzt aber erst gemerkt wie viel aufwand das mit dem lateinlernproggi ist :roteyes: :roteyes:
|
Re: FTP-Server abfrage?
Jetzt hab ich diesen Text hier
Delphi-Quellcode:
und ich habe eine test.html mit 280kb auf dem Server angelegt, trotzdem zeigt das Programm kein Update verfügbar. Die Ordener Programme und Latein scheint er nicht zu finden, es kommt aber auch keine Folder not found meldung.
procedure TForm5.Button1Click(Sender: TObject);
begin idftp.Host:='niklas-nelson.de'; idftp.Username:='*meinUsername*'; idftp.Password:='*meinPW*'; try idftp.Connect(); idftp.ChangeDir('/htdocs/programme/latein/'); if idftp.Size('test.html') > 0 then begin showMessage('Update verfügbar! (auf Version 1.1)'); ShellExecute(0, 'open', pchar('http://niklas-nelson.de/programme/latein/test.exe'), nil, nil, SW_SHOWNORMAL); end else showMessage('Es gibt momentan kein Update'); idftp.Disconnect; except on E: EidProtocolReplyError do begin ShowMessage(e.Message+' ReplyErrorCode: '+IntToStr(e.ReplyErrorCode)); end; end; end; |
Re: FTP-Server abfrage?
Delphi-Quellcode:
Nun, in dem Code scheint mit dem FTP kein Problem zu geben.
procedure TForm5.Button1Click(Sender: TObject);
begin idftp.Host:='niklas-nelson.de'; idftp.Username:='*meinUsername*'; idftp.Password:='*meinPW*'; try idftp.Connect(); idftp.ChangeDir('/htdocs/programme/latein'); // hier mal den letzten / gelöscht if idftp.Size('test.html') > 0 then begin showMessage('Update verfügbar! (auf Version 1.1)'); ShellExecute(0, 'open', pchar('http://niklas-nelson.de/programme/latein/test.exe'), nil, nil, SW_SHOWNORMAL); end else showMessage('Es gibt momentan kein Update'); idftp.Disconnect; except on E: EidProtocolReplyError do begin ShowMessage(e.Message+' ReplyErrorCode: '+IntToStr(e.ReplyErrorCode)); end; end; end; Die Exception wird ja nicht ausgelöst. Nun, eine dumme Frage, Du bist Dir sicher das es die Ordner gibt? Und darin liegt auch Deine test.html. Stimmen die die Namen überein (Groß- und Kleinschreibung), denn der Server wird auf Linux o.ä. laufen. Bist Du Dir sicher, das Du die exe direkt vom http Server starten kannst? Ich denke, das wird nicht funktionieren. Du wirst sie auf Deinen Rechner laden müssen und dann ausführen. Grüße Klaus |
Re: FTP-Server abfrage?
anscheinend funktioniert das exe starten nicht aber er sollte ja trotzdem die nachricht anzeigen.
![]() Aber wie kann ich das mit dem exe runterladen sonst machen? Das Programm soll ja für alles die das Lateinbuch haben da sein und die exe soll automatisch runtergeladen werden... |
Re: FTP-Server abfrage?
Hallo Jiro,
ich habe keine Idee warum Dein Programm die Datei nicht findet. Die Datei laden kannst Du mit ftp1.get(..). Grüße Klaus |
Re: FTP-Server abfrage?
Gibt es sonst keine Möglichkeit nach einer Datei zu suchen? Und übrigens, das mit dem get funkt nicht.
Ich habe es so gemacht idftp.get ('http://...'); Fehler: Es gibt keine Überladene Version von Get, die man mit diesen Argumenten aufrufen kann. edit: Ich hab das mit dem size von 0 auf -1 gesetzt- es funkt.... edit2: Aber so funktioniert es auch nciht, weil es trotzdem die Meldung anzeigt auch wenn keine datei da ist |
Re: FTP-Server abfrage?
Hallo Jiro,
Du könntest Dir eine Liste der Dateien Deines aktuellen Verzeichnisses auf dem FTP Server geben lassen. Das geht mit idftp1.list(StringList); Mit idftp1.get kannst Du nicht die Webadresse angeben. Nur den Dateinamen plus Pfad wenn Du nicht in dem Verzeichnis bist wo die Datei liegt. In der Hilfe zu den Indy Komponeten ist auch ein Beispiel dabei. Oder ein gutes Tutorial gibt es ![]() Grüße Klaus |
Re: FTP-Server abfrage?
Und was soll ich machen nachdem ich die liste geholt habe? hast nochmal nen neuen quelltext?
übrigens, es heißt idftp ubnd nicht idftp1 :stupid: :stupid: |
Re: FTP-Server abfrage?
Zitat:
![]() Bei mir heißt die Instanz idftp1, wie sie bei Dir heißt bleibt Dir überlassen. Grüße Klaus |
Re: FTP-Server abfrage?
Gut, jetzt funkts...
Delphi-Quellcode:
so funkts auch nicht wieder die überladen meldung.
idftp.Get('test.exe');
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:01 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-2025 by Thomas Breitkreuz