IDHTTP , IDPOP3 ,IDSMTP EN GRANDE PARTIE EXPLIQUÉE
cs_Bestiol
Messages postés833Date d'inscriptiondimanche 6 janvier 2002StatutMembreDernière intervention 3 novembre 2005
-
14 mars 2003 à 10:07
cs_barbichette
Messages postés220Date d'inscriptionlundi 30 octobre 2000StatutMembreDernière intervention15 juillet 2013
-
17 janv. 2007 à 23:30
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_barbichette
Messages postés220Date d'inscriptionlundi 30 octobre 2000StatutMembreDernière intervention15 juillet 2013 17 janv. 2007 à 23:30
d'abord, 10/10 pour ce tuto, arrive juste à point...
deux petites choses.
Quand on fait un IdPOP31.Retrieve ou un IdPOP31.RetrieveHeader, il faut penser à faire Clear sur le IdMessage avant de rapeler la fonction une nouvelle fois pour charger le message suivant. Sinon, (chez moi en tout cas) il reste sur le premier message et ne charge jamais les autres. (sans erreur pour autant mais avec 3 ou 4 messages identiques).
cs_Pierre42
Messages postés19Date d'inscriptionsamedi 31 janvier 2004StatutMembreDernière intervention22 novembre 2008 23 nov. 2006 à 16:02
Pour répondre à Foucteau :
Avec la version indy 10 :
variables :
i : integer ;
texte : TIdText ;
MemoCorps : Tmemo ;
MSG: TIdMessage;
unité à ajouter : TIdText
code :
for i := 0 to msg.MessageParts.Count -1 do
begin
if msg.MessageParts[i].PartType = mptText then
begin
texte := TIdText.Create(nil);
texte.Assign(msg.MessageParts[i]) ;
MemoCorps.Text := texte.Body.Text ;
texte.free ;
end ;
end ;
cs_Pierre42
Messages postés19Date d'inscriptionsamedi 31 janvier 2004StatutMembreDernière intervention22 novembre 2008 23 nov. 2006 à 15:52
Ca ne fonctionne pas avec la version 10 !
kabiben
Messages postés1Date d'inscriptionvendredi 6 octobre 2006StatutMembreDernière intervention17 octobre 2006 17 oct. 2006 à 18:17
Merci pour votre aide. Ca marche tres bien. Merci!!!
Filipe35
Messages postés470Date d'inscriptionvendredi 14 novembre 2003StatutMembreDernière intervention23 octobre 20071 10 janv. 2006 à 17:22
Comment récupérer les headers d'une connexion idHTTP ?
fdb592
Messages postés3Date d'inscriptionvendredi 14 mars 2003StatutMembreDernière intervention 9 février 2006 18 nov. 2005 à 15:27
salut, splendide ce tuto !
ça marche super bien :)
mais une question subsiste... en existe t'il aussi un pour l'imap ???
car le composant IdIMAP4 est quand meme violent à utiliser !!
si quelqu'un a des info, merci de le faire savoir :)
Filipe35
Messages postés470Date d'inscriptionvendredi 14 novembre 2003StatutMembreDernière intervention23 octobre 20071 29 juil. 2005 à 17:55
Salut,
bon tuto mais j'ai cela dit une question
on peut se connecter sur les site okay mais comment les afficher ?
une petit exemple serait sympa
merci
Foucteau
Messages postés29Date d'inscriptionmercredi 29 mai 2002StatutMembreDernière intervention22 juin 2013 26 févr. 2005 à 09:11
Premierement merci ce tuto etait indispensable et trés interressant .... j'ai cependent un petit pb sur l'instruction suivante :
...
//Etudions le TIdText
if Msg.MessageParts.Items[PARTIEMESSAGE] is TIdText then //1
begin ...
j'ai l'erreur suivante :
Identificateur 'TIdText' non déclaré a la ligne ...
et sur la ligne suivante :
Memo1.Lines.AddStrings(TIdText(Msg.MessageParts.Items[PARTIEMESSAGE]).Body);
j'ai toujour une erreur sur TIdText mais en plus sur Body
Identificateur 'Body'non déclaré a la ligne ...
messages du debuger
E2003 Identificateur non déclaré : 'TIdText
E2029 ')' attendu(e) mais identificateur 'Body' trouvé(e)
Voila les petit pb ...
Choses au quelles j'ai pencer:
J'utilise Delphi 2005 peut etre que avec j'ai eu INDY 10
Dans l'aide il disent : ( text traduit par un traducteur internet)
########## Debut copy aide delphi 2005 pour indy 10
Le Message Parts
un autre domaine d'amélioration d'Indy 10 est l'architecture et la manipulation des pièces de messsage utilisées dans TIdMessage. L'architecture a été mise à jour pour permettre des opérations jet-basées pour le chargement, stockant, transmettant, et receiveing les pièces de message.La hiérarchie d'objet a également changé pour mettre en application le stockage de mémoire ou dossier-basé utilisé pour des pièces de message.
En conséquence, TIdAttachment est maintenant une classe abstraite d'ancêtre pour des pièces de message d'attachement.Les applications devraient employer TIdAttachmentFile ou TIdAttachmentMemory en créant des pièces de message d'attachement, ou permettez à l'exemple de TIdMessage de mettre en application un comportement de défaut en utilisant son traiteur d'événement d'OnCreateAttachment.
Les applications utilisation immobile TIdText de représenter les pièces de message basées par texte.
Chacune des classes de pièce de message a une nouvelle valeur de PartType qui indique si la pièce de message représente une pièce des textes ou un attachement binaire. En outre, ContentID et ContentLocation peuvent maintenant être maintenus pour les exemples de pièce de message dans un message donné.
Une autre facette de l'architecture de transmission de messages qui a été mise à jour dans Indy 10 est la représentation des pièces relatives de message dans un message, comme utilisé dans des messages de "multipart/alternative" et de "multipart/mime". Indy 10 a changé son exécution de la collection de pièces de message pour permettre la représentation des pièces nichées de message de MIME. Ceci inclut une meilleures utilisation et identification de la frontière de MIME pour des pièces de message. La propriété de ParentPart dans des descendants de TIdMessage et de TIdAttachment est employée pour exprimer le rapport parmi les diverses pièces de message. "
############### FIN Aide Delphi 2005 pour INDY 10
sans etre bocoup plus explicite.
J'ai recherché quelques méthodes pour voir comment récupéré les mails mais sans succés. mon gros pb c que je ne comprend pas assez bien l'anglais pour pouvoir capter le debut d'une honce d'une piste pour me permetre d'avancer.
Donc voila si vous avez aussi ce pb ou que vous avez la solution sympat de la faire partager...
Mes en tt cas merci encor pour cette excelent tutoriel trés bien fait
Voici les composent Indy que j'ai déposer sur mon apli :
Tidpop3
Tidmessage
Ceci vien peut etre de la je v essayer de trouver un composant Tidtext mais j'ai pas l'impression qu'il y en es un enfin je vous tiendrais au courent
Merci a tous
A la prochaine
Dreuteu
Messages postés44Date d'inscriptionsamedi 16 octobre 2004StatutMembreDernière intervention28 février 2006 11 févr. 2005 à 16:54
Merci ! Super tuto qui m'a ete tres utile...
10/10 pr la peine :p
hichvbasic
Messages postés17Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention18 mai 2006 21 janv. 2005 à 19:14
Merci Pour le tuto ,
cs_zmc
Messages postés147Date d'inscriptionvendredi 26 avril 2002StatutMembreDernière intervention26 avril 20081 20 nov. 2004 à 18:19
Salut, très bon tut, une bonne note pour la peine. A quand une suite ?
PS: CC Copie Carbone (Copie) et CCi Copie Caché
taye78
Messages postés106Date d'inscriptionmardi 18 juin 2002StatutMembreDernière intervention13 janvier 2007 14 mai 2004 à 22:10
slt, 10/10. Malgrés ce qui suit:
" F := TFileStream.Create(?c:\fichier.exe?, fmCreate); "
(dans la partie 1 oú tu explique idHTTP)
La création de cette variable n'aurait pas dû être contenu dans le try mais juste avant.
Car tu libère F dans le finally. Imagine si la création de la variable échoue, il y aura une erreur dans le finally qui essaye de libérer l'espace alloué.
--wG
weboide
Messages postés30Date d'inscriptionsamedi 19 avril 2003StatutMembreDernière intervention13 mars 2007 19 avril 2003 à 16:24
ca aide beaucoup ce tutoriel, merci!!
cs_Skyline
Messages postés2Date d'inscriptionjeudi 19 décembre 2002StatutMembreDernière intervention29 mars 2003 29 mars 2003 à 02:08
Receipt c le destinataire du mail
bon tutoriel en francais le seul que j'avais trouvé etait en chinois (ou un truc du genre ;) ) si j'avais eu celui ci a une epoque ca m'aurais bien aide......
Remixgame
Messages postés56Date d'inscriptionmardi 12 février 2002StatutMembreDernière intervention 2 août 2007 14 mars 2003 à 20:35
Ouai ca doit être ca ...
BB ca doit être cci ...
Mais je n'utilise jamais ...
cs_Bestiol
Messages postés833Date d'inscriptiondimanche 6 janvier 2002StatutMembreDernière intervention 3 novembre 20051 14 mars 2003 à 10:07
il me semble que les points d'interrogation se mette automatiquement lorsqu'un caractère n'a pas été reconnu... Mais je suis pas sûr, car c'est vrai que ce sont tes apostrophes qui ont été remplacées (mais pas toutes... ??)
En tout cas, c'est un bon tutoriel !!
Quant à CC, ça veut dire "Copie Cachée", mais j'ai jamais vu BB... A moins que ça corresponde à Cci, qui est une autre forme de copie cachée...
17 janv. 2007 à 23:30
deux petites choses.
Quand on fait un IdPOP31.Retrieve ou un IdPOP31.RetrieveHeader, il faut penser à faire Clear sur le IdMessage avant de rapeler la fonction une nouvelle fois pour charger le message suivant. Sinon, (chez moi en tout cas) il reste sur le premier message et ne charge jamais les autres. (sans erreur pour autant mais avec 3 ou 4 messages identiques).
Ensuite, je reçoit des messages avec des caractères bizares..
?UTF-8?B?UG9ydGFibGU=?= pour "portable" ou "téléphone" pour "téléphone".
C'est un problème de jeu de caractère mais je n'ai pas encore la réponse.
Je continue de chercher dans mon coin mais si quelqu'un à une solution, merci de me la donner...
Barbichette
23 nov. 2006 à 16:02
Avec la version indy 10 :
variables :
i : integer ;
texte : TIdText ;
MemoCorps : Tmemo ;
MSG: TIdMessage;
unité à ajouter : TIdText
code :
for i := 0 to msg.MessageParts.Count -1 do
begin
if msg.MessageParts[i].PartType = mptText then
begin
texte := TIdText.Create(nil);
texte.Assign(msg.MessageParts[i]) ;
MemoCorps.Text := texte.Body.Text ;
texte.free ;
end ;
end ;
23 nov. 2006 à 15:52
17 oct. 2006 à 18:17
10 janv. 2006 à 17:22
18 nov. 2005 à 15:27
ça marche super bien :)
mais une question subsiste... en existe t'il aussi un pour l'imap ???
car le composant IdIMAP4 est quand meme violent à utiliser !!
si quelqu'un a des info, merci de le faire savoir :)
29 juil. 2005 à 17:55
bon tuto mais j'ai cela dit une question
on peut se connecter sur les site okay mais comment les afficher ?
une petit exemple serait sympa
merci
26 févr. 2005 à 09:11
...
//Etudions le TIdText
if Msg.MessageParts.Items[PARTIEMESSAGE] is TIdText then //1
begin ...
j'ai l'erreur suivante :
Identificateur 'TIdText' non déclaré a la ligne ...
et sur la ligne suivante :
Memo1.Lines.AddStrings(TIdText(Msg.MessageParts.Items[PARTIEMESSAGE]).Body);
j'ai toujour une erreur sur TIdText mais en plus sur Body
Identificateur 'Body'non déclaré a la ligne ...
messages du debuger
E2003 Identificateur non déclaré : 'TIdText
E2029 ')' attendu(e) mais identificateur 'Body' trouvé(e)
Voila les petit pb ...
Choses au quelles j'ai pencer:
J'utilise Delphi 2005 peut etre que avec j'ai eu INDY 10
Dans l'aide il disent : ( text traduit par un traducteur internet)
########## Debut copy aide delphi 2005 pour indy 10
Le Message Parts
un autre domaine d'amélioration d'Indy 10 est l'architecture et la manipulation des pièces de messsage utilisées dans TIdMessage. L'architecture a été mise à jour pour permettre des opérations jet-basées pour le chargement, stockant, transmettant, et receiveing les pièces de message.La hiérarchie d'objet a également changé pour mettre en application le stockage de mémoire ou dossier-basé utilisé pour des pièces de message.
En conséquence, TIdAttachment est maintenant une classe abstraite d'ancêtre pour des pièces de message d'attachement.Les applications devraient employer TIdAttachmentFile ou TIdAttachmentMemory en créant des pièces de message d'attachement, ou permettez à l'exemple de TIdMessage de mettre en application un comportement de défaut en utilisant son traiteur d'événement d'OnCreateAttachment.
Les applications utilisation immobile TIdText de représenter les pièces de message basées par texte.
Chacune des classes de pièce de message a une nouvelle valeur de PartType qui indique si la pièce de message représente une pièce des textes ou un attachement binaire. En outre, ContentID et ContentLocation peuvent maintenant être maintenus pour les exemples de pièce de message dans un message donné.
Une autre facette de l'architecture de transmission de messages qui a été mise à jour dans Indy 10 est la représentation des pièces relatives de message dans un message, comme utilisé dans des messages de "multipart/alternative" et de "multipart/mime". Indy 10 a changé son exécution de la collection de pièces de message pour permettre la représentation des pièces nichées de message de MIME. Ceci inclut une meilleures utilisation et identification de la frontière de MIME pour des pièces de message. La propriété de ParentPart dans des descendants de TIdMessage et de TIdAttachment est employée pour exprimer le rapport parmi les diverses pièces de message. "
############### FIN Aide Delphi 2005 pour INDY 10
sans etre bocoup plus explicite.
J'ai recherché quelques méthodes pour voir comment récupéré les mails mais sans succés. mon gros pb c que je ne comprend pas assez bien l'anglais pour pouvoir capter le debut d'une honce d'une piste pour me permetre d'avancer.
Donc voila si vous avez aussi ce pb ou que vous avez la solution sympat de la faire partager...
Mes en tt cas merci encor pour cette excelent tutoriel trés bien fait
Voici les composent Indy que j'ai déposer sur mon apli :
Tidpop3
Tidmessage
Ceci vien peut etre de la je v essayer de trouver un composant Tidtext mais j'ai pas l'impression qu'il y en es un enfin je vous tiendrais au courent
Merci a tous
A la prochaine
11 févr. 2005 à 16:54
10/10 pr la peine :p
21 janv. 2005 à 19:14
20 nov. 2004 à 18:19
PS: CC Copie Carbone (Copie) et CCi Copie Caché
14 mai 2004 à 22:10
" F := TFileStream.Create(?c:\fichier.exe?, fmCreate); "
(dans la partie 1 oú tu explique idHTTP)
La création de cette variable n'aurait pas dû être contenu dans le try mais juste avant.
Car tu libère F dans le finally. Imagine si la création de la variable échoue, il y aura une erreur dans le finally qui essaye de libérer l'espace alloué.
--wG
19 avril 2003 à 16:24
29 mars 2003 à 02:08
bon tutoriel en francais le seul que j'avais trouvé etait en chinois (ou un truc du genre ;) ) si j'avais eu celui ci a une epoque ca m'aurais bien aide......
14 mars 2003 à 20:35
BB ca doit être cci ...
Mais je n'utilise jamais ...
14 mars 2003 à 10:07
En tout cas, c'est un bon tutoriel !!
Quant à CC, ça veut dire "Copie Cachée", mais j'ai jamais vu BB... A moins que ça corresponde à Cci, qui est une autre forme de copie cachée...