AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi idFTP: Download funktioniert nur in lokalem Netz
Thema durchsuchen
Ansicht
Themen-Optionen

idFTP: Download funktioniert nur in lokalem Netz

Ein Thema von FBrust · begonnen am 22. Feb 2011 · letzter Beitrag vom 23. Feb 2011
 
Benutzerbild von FBrust
FBrust

Registriert seit: 4. Okt 2002
Ort: Saarbrücken
654 Beiträge
 
Delphi 10.4 Sydney
 
#1

idFTP: Download funktioniert nur in lokalem Netz

  Alt 22. Feb 2011, 12:29
Hallo,

ich möchte einen FTP-Download durchführen, allerdings funktioniert er nur im lokalen Netz.

Das im Code aufgeführte Formular soll die Datei herunterladen. Sobald der Download übers Internet durchgeführt werden soll, wird im Zielverzeichnis eine 0-Byte-Datei gleichen Namens angelegt und das Programm reagiert nicht mehr.

Der FTP-Server (hier FileZilla) zeigt jedoch an, dass der Transfer ordnungsgemäß stattfindet.

Hier der code:

Delphi-Quellcode:
procedure TfrmDownload.btnCancelClick(Sender: TObject);
begin
    frmMain.IdFTP1.Abort;
    Close;
end;

procedure TfrmDownload.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
    Action := caFree;
    frmDownload := nil;
end;

procedure TfrmDownload.IdFTP1Work(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCount: Int64);
begin
    pbDL.Position := aWorkCount;
    Application.ProcessMessages;

end;



procedure TfrmDownload.IdFTP1WorkBegin(ASender: TObject; AWorkMode: TWorkMode;
  AWorkCountMax: Int64);
begin
    pbDL.Max := IdFTP1.Size('Downloads\' + strProgFile); ;

end;



procedure TfrmDownload.FormActivate(Sender: TObject);
var strDestFile : string;
    lStream : TFileStream;
    strMsg : string;
    qryTemp : TIBCQuery;
begin
    qryTemp := TIBCQuery.Create(Application);
    with qrytemp do
    begin
      Connection := dmFBData.ConData;
      SQL.Text := 'SELECT INTMWMAIL, INTMWFTP, STRFTPHOST, STRFTPUSER, ' +
                  'STRFTPPW, INTFTPPORT ' +
                  'FROM SD_PARAMS';
      try
        Open;
        idFTP1.Host := FieldbyName('STRFTPHOST').AsString;
        idFTP1.Username := FieldbyName('STRFTPUSER').AsString;
        idFTP1.Password := FieldbyName('STRFTPPW').AsString;
        idFTP1.Port := FieldbyName('INTFTPPORT').AsInteger;
        Close;
      except
        on E:Exception do
        begin
          strMsg := 'Fehler bei Ermittlung FTP-Daten, Meldung: ' + E.Message;
          ShowWarningEx(strMsg);
        end;
      end;
      Free;
    end;


    strDestFile := GetSpecialFolderLocation($23) + 'test\Updates\' + strProgFile;
    lStream := TFileStream.Create(strDestFile, fmCreate or fmShareDenyNone);
    try
      idFTP1.Connect;
      Application.ProcessMessages;
      idFTP1.Get('Downloads\' + strProgfile, lStream);
    except
      on E:Exception do
      begin
        ShowWarningEx('Fehler bei Download, Meldung: ' + E.Message);
        lStream.Free;
        idFTP1.Disconnect;
        Exit;
      end;
    end;
    idFTP1.Disconnect;
    lStream.Free;
    strMsg := 'Download beendet. ' + #13#10#13#10 +
              'Das Programm wird nun beendet und aktualisiert. Nach der ' +
              'Aktualisierung wird es neu gestartet.';
    ShowInfo(strMsg);
    RunAndWaitShell(strDestFile, ' /sp- /silent', 0);
    Close;

    frmMain.Close;

end;
Wie gesagt, im lokalen Netzt läuft alles prima. Die Ordnerstruktur ist auch identisch, d. h. die Quell- und Zielordner sind beide vorhanden.

Hat vielleicht jemand einen Tip?

Gruß
Frank
"Ich habe Dinge gesehen, die ihr Menschen niemals glauben würdet. Gigantische Schiffe, die brannten, draußen vor der Schulter des Orion" - Roy Batty

Geändert von FBrust (22. Feb 2011 um 12:52 Uhr) Grund: Code ergänzt
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz