Envoyer un fichier par IdTCPClient1 et OpenDialog1

ewertheimer Messages postés 161 Date d'inscription dimanche 16 janvier 2005 Statut Membre Dernière intervention 26 janvier 2009 - 29 juin 2005 à 10:18
OcHre Messages postés 44 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 26 avril 2008 - 5 juil. 2005 à 10:15
l'apprenti

4 réponses

ewertheimer Messages postés 161 Date d'inscription dimanche 16 janvier 2005 Statut Membre Dernière intervention 26 janvier 2009
29 juin 2005 à 10:21
Dsl pour le message l'apprenti je tester la textBox normal et au lieu de m'envoyer mon texte bah ils ont envoyer l'apprenti.
Bonjour
j'aimerais savoir comment envoyer un fichier que l'on choisirai avec un
OpenDialog1 et que l'on enverrai avec un IdTCPClient1 et si possible le
code a inserer pour le composant IdTCPServer1.

Merci de votre aide
0
ewertheimer Messages postés 161 Date d'inscription dimanche 16 janvier 2005 Statut Membre Dernière intervention 26 janvier 2009
29 juin 2005 à 12:03
j'ai trouver quelque chose:


function TForm1.SendFile(const AFileName: string;
ATcpClient: TIdTCPClient) : Boolean;
var
Fs : TFileStream;
begin
Result := False;
ATcpClient.Connect(); //Connecte. Les propriétés Host et Port doivent être remplies.
try
Fs := TFileStream.Create(AFileName,fmOpenRead,fmShareDenyWrite); //Créer le flux
try
ATcpClient.WriteLn(Format('TRANS %s',[ExtractFileName(AFileName)])); //demander transfert
try
ATcpClient.WriteInteger(Fs.Size); //Ecrire la taille
ATcpClient.WriteStream(Fs); //Ecrit le flux
except
MessageDlg('Erreur pendant l''envoi du fichier.', mtError, [mbOK], 0);
end;
finally
FreeAndNil(Fs); //Libérer le flux
Result := ATcpClient.ReadLn()='OK'; //OK uniquement si le serveur a renvoyé "OK"
end;
finally
ATcpClient.Disconnect; //Déconnecter à la fin.
end;
end;

j'ai un problezme avec la partie en rouge il y a une exception avec le message impossible d'ouvrir le fichier.

Pouyrriez vous m'aider
0
ewertheimer Messages postés 161 Date d'inscription dimanche 16 janvier 2005 Statut Membre Dernière intervention 26 janvier 2009
30 juin 2005 à 16:30
SVP j'ai vraiment besoin d'aide!!!!
0
OcHre Messages postés 44 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 26 avril 2008
5 juil. 2005 à 10:15
Salut,
Il faut juste qu'à la place de AFileName tu mettes le chemin et le nom de ton fichier, si tu utilises opendialog cela donnera:
TFileStream.Create(OpenDialog1.Filename,fmOpenRead,fmShareDenyWrite);
En esperant t'avoir aidé.


Rions un peu en attendant la mort.
0
Rejoignez-nous