Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi FTP status anzeige (https://www.delphipraxis.net/92298-ftp-status-anzeige.html)

1234588 17. Mai 2007 17:19


FTP status anzeige
 
hallo community ;)
ich hab hier eine funktion gefunden die es einem erleichtert einen upload einer datei zu realisieren. da ich im grunde nur eine datei habe die auf einen server muss, sehe ich es nicht ein zu den indys oder anderem zu greifen. da die datei von 100kb bis rund 5 mb groß sein kann, waere eine status anzeige ganz nett.
leider funktioniert das ganze nicht wie ich moechte.
(das beep() im callback dient nur zu testzwecken)

Delphi-Quellcode:
procedure StatusCallback(hInet: HINTERNET; Context, Status: DWORD; pInformation: Pointer; InfoLength: DWORD); stdcall;
begin
  beep(100, 100);
end;

function PutFile(server, username, password, localfile, remotefile: string; port: word = 21): boolean;
var
  hopen, hconnect: HINTERNET;
begin
  hopen := InternetOpen('test', INTERNET_OPEN_TYPE_DIRECT, nil, nil, 0);
  InternetSetStatusCallback(hopen, @StatusCallback);
  hconnect := InternetConnect(hopen, pchar(server), port, pchar(username), pchar(password), INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0);
  Result := FtpPutFile(hconnect, pchar(localfile), pchar(remotefile), FTP_TRANSFER_TYPE_UNKNOWN, 0);
  InternetCloseHandle(hconnect);
end;
ich freue mich ueber jede hilfe die mich ein steuck weit weiter bringt

inherited 17. Mai 2007 17:37

Re: FTP status anzeige
 
Zitat:

Zitat von 1234588
da ich im grunde nur eine datei habe die auf einen server muss, sehe ich es nicht ein zu den indys oder anderem zu greifen.

Und wieso nicht?

1234588 17. Mai 2007 17:43

Re: FTP status anzeige
 
weil ich mein programm eigentlich weitgehend komponentenfrei halten wollte. ;)

inherited 17. Mai 2007 23:41

Re: FTP status anzeige
 
Sorry für die dummen Fragen, aber warum? :lol:
Du kannst die Komponente ja dynamisch erstellen wenn du sie brauchst.

1234588 18. Mai 2007 00:29

Re: FTP status anzeige
 
weil ich alles nur noch mit meiner status anzeige verbinden muesste (ich verwende PROGRESS_CLASS), was kein großes problem darstellen sollte. das jetzt auf die indys umbauen waere viel mehr arbeit :P
mir waere das ganze ohne indy lieber, wenn mir aber keiner helfen kann bzw. mir niemand sagen kann was ich falsch mache, muss ich wohl alles umschreiben :'(

fkerber 18. Mai 2007 00:37

Re: FTP status anzeige
 
Hi!

Zitat:

Zitat von 1234588
leider funktioniert das ganze nicht wie ich moechte.


Was funktioniert denn nicht?
Bzw. inwiefern äußert sich das "geht nicht"?
Was hast du bisher versucht?


Ciao, Frederic

1234588 18. Mai 2007 00:47

Re: FTP status anzeige
 
ich moechte eine status anzeige haben. ich habe in meiner callback() prozedur die moeglichkeit den fortschritt meines uploads auszulesen (so meine ich zumindest). normalerweise sollte beep() beim upload ausgeloest werden, was aber nicht passiert (beep() habe ich nur zu testzwecken). ich komm einfach nicht dahinter was ich falsch gemacht habe

fkerber 18. Mai 2007 01:06

Re: FTP status anzeige
 
Hi!

Dann schau mal hier, was die Code-Lib zu bieten hat:
http://www.delphipraxis.net/internal...ct.php?t=88375

oder auch hier:
http://support.microsoft.com/kb/234913


Ciao, Frederic

1234588 18. Mai 2007 01:19

Re: FTP status anzeige
 
ich denke das ich das umschreiben kann

vielen dank ;)

(ich werde das umgeschriebene dann hier veroeffentlichen)

Luckie 18. Mai 2007 01:28

Re: FTP status anzeige
 
Wer lesen kann ist klar im Vorteil:
Zitat:

Note The callback function specified in the lpfnInternetCallback parameter will not be called on asynchronous operations for the request handle when the dwContext parameter of HttpOpenRequest is set to zero (INTERNET_NO_CALLBACK), or the connection handle when the dwContext handle of InternetConnect is set to zero (INTERNET_NO_CALLBACK).


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 Uhr.
Seite 1 von 2  1 2      

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