România
Roportal.ro

Delphi - nu reusesc sa fac upload la toate fisierele

Început de Antonio83, Sâm 24 feb 2007 · 5 răspunsuri · 5.525 vizualizări

Antonio832 mesaje#1

Salut ... eu ma kinui de mult sa realizez un program care face upload la niste fisiere dintr-un director. De exemplu vreau sa se faca upload la toate fisierele din directorul "c:\temp" . Uploadu` se va face pe un server ce gazduieste o pagina web. Ma conectez la site prin intermediul componentelor delphi, dar nu reusesc sa fac upload la toate fisierele. Am reusit doar sa fac upload specificand numele fisierului respectiv(fisier cu fisier). Insa eu doresc sa fac upload la tot ce se afla in directorul respectiv fara sa stiu numele sau extensia. Sau daca pot sa fac upload la directorul in sine. Iata ce a facut eu, daca imi puteti da sfaturi v-as fi p deplin recunoscator.

procedure TForm1.NMFTP1Connect(Sender: TObject);

var

TheDir: String;

begin

begin

//messagedlg('s-a conectat',mtinformation,[mbok],0);

thedir:='yahoomess';

NMFTP1.ChangeDir(thedir);

end;

button2.click;

end;

procedure TForm1.NMFTP1AuthenticationFailed(var Handled: Boolean);

begin

messagedlg('authentication failed',mtinformation,[mbok],0);

end;

procedure TForm1.NMFTP1AuthenticationNeeded(var Handled: Boolean);

begin

messagedlg('authentication needed',mtinformation,[mbok],0);

end;

procedure TForm1.NMFTP1ConnectionFailed(Sender: TObject);

begin

messagedlg('connection failed',mtinformation,[mbok],0);

end;

procedure TForm1.NMFTP1ConnectionRequired(var Handled: Boolean);

begin

messagedlg('connection requierd',mtinformation,[mbok],0);

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

if NMFTP1.Connected then

NMFTP1.Disconnect

else

begin

NMFTP1.Vendor := NMOS_AUTO;

NMFTP1.Host := Edit1.Text;

NMFTP1.UserID := Edit2.Text;

NMFTP1.Password := Edit3.Text;

NMFTP1.Connect;

end;

end;

procedure TForm1.Button3Click(Sender: TObject);

var

TheDir: String;

begin

thedir:='temp';

NMFTP1.ChangeDir(thedir);

end;

procedure TForm1.Button4Click(Sender: TObject);

var

TheDir: String;

begin

if InputQuery('Create Directory', 'Directory name?', TheDir) then

NMFTP1.MakeDirectory(TheDir);

end;

procedure TForm1.Button5Click(Sender: TObject);

var

TheDir: String;

begin

if InputQuery('Remove Directory', 'Directory name?', TheDir) then

NMFTP1.RemoveDir(TheDir);

end;

procedure TForm1.Button6Click(Sender: TObject);

begin

ShowMessage(NMFTP1.CurrentDir);

end;

procedure TForm1.Button7Click(Sender: TObject);

begin

NMFTP1.Disconnect;

end;

procedure TForm1.NMFTP1Disconnect(Sender: TObject);

begin

messagedlg('deconectat',mtinformation,[mbok],0);

end;

procedure TForm1.Button2Click(Sender: TObject);

var

LocalFile,

RemoteFile: String;

F: File of Byte;

FSize: Integer;

begin

//1-------------------------------------------------

if fileexists('c:\temp\pic1.jpg') then

begin

LocalFile := 'c:\temp\pic1.jpg';

case RadioGroup1.ItemIndex of

0: NMFTP1.Mode(MODE_ASCII);

1: NMFTP1.Mode(MODE_IMAGE);

2: NMFTP1.Mode(MODE_BYTE);

end;

AssignFile(F, LocalFile);

Reset(F);

FSize := FileSize(F);

CloseFile(F);

NMFTP1.Allocate(FSize);

NMFTP1.Upload(LocalFile, RemoteFile);

end;

//2---------------------------------------------

if fileexists(c:\temp\pic2.jpg') then

begin

LocalFile := 'c:\temp\pic2.jpg';

case RadioGroup1.ItemIndex of

0: NMFTP1.Mode(MODE_ASCII);

1: NMFTP1.Mode(MODE_IMAGE);

2: NMFTP1.Mode(MODE_BYTE);

end;

AssignFile(F, LocalFile);

Reset(F);

FSize := FileSize(F);

CloseFile(F);

NMFTP1.Allocate(FSize);

NMFTP1.Upload(LocalFile, RemoteFile);

end;

end;

procedure TForm1.Timer1Timer(Sender: TObject);

begin

form1.hide;

form2.show;

timer1.enabled:=false;

end;

end.

Deci acest cod copiaza cele 2 imagini pe server, dar daca nu le stiu numele fisierelor ? Cum fac sa fac upload la fisierele din directorul c:\TEMP ?

Editat Sâm 24 feb 2007 21:55

radu84360 mesaje#2

cu ce componenta lucrezi? nu am facut nici un proiect de genul acesta pana acum insa tot ceea ce iti pot sugera e sa folosesti debug-ul,watch-ul delphi-ului si sa rulezi programul pas cu pas.

cat despre componente, cel mai usor e sa lucrezi cu ADO pentru ceea ce vrei tu sa faci

toate cele bune

Antonio832 mesaje#3
radu84 a scris:
cu ce componenta lucrezi? nu am facut nici un proiect de genul acesta pana acum insa tot ceea ce iti pot sugera e sa folosesti debug-ul,watch-ul delphi-ului si sa rulezi programul pas cu pas.

cat despre componente, cel mai usor e sa lucrezi cu ADO pentru ceea ce vrei tu sa faci

toate cele bune

folosesc componenta standard ... nu mai stiu acum cum se num ca nu am instalat delphi 5 .... o sa il pun p pc ... dar daca nu ma insel avea un nume de genu` ... nmhttp ... sau mftp ... nu mai stiu exact .. insa eu vreau o functie ceva care sa faca kestia aia....

radu84360 mesaje#4

imi cer scuze ca nu am fost atent de prima data. deci tie iti trebuie de fapt o bucata de cod care sa iti faca cautarea tuturor fisierelor dintr-un director. ei bine asta o faci cu functiile delphi findfirst,findnext.

uite aici ce te-ar putea ajuta

http://delphi.about.com/od/vclusing/a/findfile.htm

apropo "ch" de cand se scrie "k"?

snip3r-xp29 mesaje#5

Cu riscul dea pune o intrebare stupida...ce este delphi si de unde se invata programarea ???eU am lucrat in VB 2008 express edition dar nici acolo nu am avut succes.Multumesc pentru orice ajutor :lol: google m-a condus aici

Editat Dum 19 oct 2008 15:49

← Înapoi la Programare