ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009
-
25 juin 2005 à 11:14
Pornman
Messages postés20Date d'inscriptionsamedi 25 septembre 2004StatutMembreDernière intervention20 janvier 2006
-
11 oct. 2005 à 06:03
Voila en faites je suis en train de creer un logiciel ou on
charge des image dans un TImage et l'on envoie ensuite la photo par
stream. Mon probleme : Je me connecte tous est ok rensuite je charge la
photo tout est ok ensuite je l'envoie par stream la k'envoie est ok
mais pas la reception car j'ai mis dans le serveur sue a chaque fois
que une image sera recu ilo affche image recu. Je pense que c'est parce
que j'ai mis trop de code dans l'venement OnExecute du serveur et que
au moment Ou l'image est envoye elle ne peut etre receptionner. Mais le
probleme n'arrive pas tout de suite . Quand j'envoie l'image je ne peux
plus envoyer de texte ce qui est deja pas normal car avant que je
l'envoi je peux envoyer du texte mais une fois que je l'ai envoyer je
peux encore clicquer sur le bouton d'envoie mais je ne le recoie
jamais. Mais le vrai truc embettant c'est a chaque fois que j'envoie
l'image et que ensuite je me deconnecte : si je me deconnecte tt de
suite il me dise qu'il y a une excpetion de violation d'acces . Je vous
met le code de l'envoie de l'image sur le TButton (prenait en compte
que la connection est deja etablie):
var
MemStream:TMemoryStream; // Déclaration des variables
begin
MemStream:=TMemoryStream.Create;
try
webcam.Picture.Graphic.SaveToStream(Memstream);//Chargement de l'image jpg dans le stream
try
with IdTCPClient1 do
begin
OpenWriteBuffer;
WriteStream(memstream);//Envoi du stream
CloseWriteBuffer;
memstream.Free;
ShowMessage ('Photo envoyer')
end;
except
ShowMessage ('Impossible pour le moment reessayer plus tard')
end;
finally
end;
end;
la tout marche tres bien
ensuite ce qui bug je le met en rouge Le code dans l'evenement OnExecute su Serveur:
ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009 25 juin 2005 à 19:31
J'ai fait ce que tu m'as dit mais maintenant il me dit qu'il ne
trouve plus plus le fichier source IdStack et quand je fait ignorer
pour que cela s'en aille il m'affiche une exeption je te mets l'image :
J'ai vraiment besoin d'aide je suis sur un tres gros projet un TChat comme tu dis mais bourrer de fonction !!
ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009 25 juin 2005 à 20:09
Est ce que c peut etre parce que j'envoie et je recoie moi meme le
fichier tu crois que c'est pour sa que j'ai toujours un access
violation mais ce qui est toujours bizarre c'est la reception. J'ai
essayer un autre port que celui de lenvoie de texte. je te met le code :
code du boutton :
var
stream: TMemoryStream;
begin
stream:= TMemoryStream.Create;
if OpenDialog1.Execute then stream.LoadFromFile(OpenDialog1.FileName);
IdTCPClient1.Port:= StrToInt(Edit1.Text);
IdTCPClient1.Host:= Edit2.Text;
IdTCPServer1.DefaultPort:= StrToInt (Edit1.Text);
IdTCPClient1.Connect;
try
IdTCPClient1.OpenWriteBuffer;
IdTCPClient1.WriteStream(stream);
IdTCPClient1.OpenWriteBuffer;
ShowMessage('Fichier envoyer ')
except
ShowMessage('Erreur')
end;
end;
code de l'evenement OnExecute :
var
stream: TMemoryStream;
begin
with Athread.Connection do
stream:= TMemoryStream.Create;
athread.Connection.ReadStream(stream, -1, true);
Stream.Seek(0, soFromBeginning);
ShowMessage('Vous venez de recevoir un fichier ');
if SaveDialog1.Execute then stream.SaveToFile(SaveDialog1.FileName);
stream.free;
end;
Mais le probleme c'est que le chzamp de SaveDialog1.Execute ne
s'affiche jamais et que le message vous avez recu un fichier non plus
donc c'est un erreur de reception car je ne recoie jamais l'image mais
je pense vraiment que c'est du A ce que c'est moi qui envoie le fichier
et qui la recoie.
Merci beaucoup de ton aide et de ta patience.
Vous n’avez pas trouvé la réponse que vous recherchez ?
ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009 26 juin 2005 à 09:32
Parce que en faites pour le transfert de fichier j'ai creer une
autre form avec donc un autre client et un autre serveur alors je pense
que sa peut compter comme deux serveur et de client.
ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009 26 juin 2005 à 13:34
Est ce que il est possible d'ouvrir une form que on cache derriere
la form principal a l'ouverture de l'application. Etv que au moment ou
l'on clic sur un bouton ou que on recoit un stream la form ressorte.
Parce que j'ai mis le client et le serveur d'envoie /reception de
fichiers sur cette form
ewertheimer
Messages postés161Date d'inscriptiondimanche 16 janvier 2005StatutMembreDernière intervention26 janvier 2009 26 juin 2005 à 13:45
Je crois que sa bug parce que j'envoie et je recoie a la fois
sur le meme port le fichier il faudrait que je test avec kelkun
d'autres. Si il y a un volontaire pour que je lui envoie mon exe afin
de la tester.
Sachant que comme c'est d tcp/ip vous aurez besoin de mon ip et moi de la votre. Si il y a des volontaires. Faites moi signe.