Bonjour à tous,
je viens vers vous encore une fois pour sollicité votre aide bienveillante, je ne comprend pas pourquoi mon logiciel que j'ai fait pour l'association des diabétiques de la Manche n'envoie plus d'email, j'ai tout revérifier pourtant je ne vois pas de défaut.
je vous joins donc les fichiers sources à l'adresse suivante : https://www.dropbox.com/sh/y2ylg2u2axes ... RnhXa?dl=1
Je vous remercie d'avance pour l'aide que vous allez m'apporter.
Enregistrement et envois de courriers et de courriels
Enregistrement et envois de courriers et de courriels
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Un homme doit être poli, mais il doit aussi être libre !
Re: Enregistrement et envois de courriers et de courriels
Bonjour,
Niveau code pur :
De ce que j'ai vu dans Courriels.pb tu ne gère pas correctement la valeur de retour de deux procédures de la bibliothèque "PureBasic - Mail" :
- ligne 66 (dans Initialiser_Mail()) : Tu vérifie que "CreateMail(#Courriel, De, Objet)" initialise correctement le message mais rien ne se passe si la procédure échoue. (Je ne pense pas que le problème viene de cette procédure)
- ligne 105 (dans Envoyer_Courriel()) : Tu ne vérifie pas du tout la valeur renvoyée par "SendMail(#Courriel, Smtp)". Et à mon avis cette procédure doit renvoyer 0.
Niveau principe de fonctionnement :
Dans la variable Smtp tu y met ligne 50 le le serveur du destinataire (en supposant au passage que celui-ci est de la forme "smtp.nomdedommaine" ce qui n'est pas forcement le cas mais c'est une autre histoire). Sauf que, si j'ai bien compris le principe de fonctionnement de l'envoi de messages, tu doit envoyer le message au serveur smtp de l'expéditeur (smtp.afd50manche.fr) et c'est ce serveur qui s'occupe de transmettre le message au(x) serveur(s) smtp du/des destinataire(s) .
PS : Essaye d'envoyer un message à l'adresse dynamique marqué sur https://www.mail-tester.com/ pour vérifier que le FAI de l'asso ne l'ai pas mise sur une adresse ip consif=dérée comme étant émetteuse de SPAM
Niveau code pur :
De ce que j'ai vu dans Courriels.pb tu ne gère pas correctement la valeur de retour de deux procédures de la bibliothèque "PureBasic - Mail" :
- ligne 66 (dans Initialiser_Mail()) : Tu vérifie que "CreateMail(#Courriel, De, Objet)" initialise correctement le message mais rien ne se passe si la procédure échoue. (Je ne pense pas que le problème viene de cette procédure)
- ligne 105 (dans Envoyer_Courriel()) : Tu ne vérifie pas du tout la valeur renvoyée par "SendMail(#Courriel, Smtp)". Et à mon avis cette procédure doit renvoyer 0.
Niveau principe de fonctionnement :
Dans la variable Smtp tu y met ligne 50 le le serveur du destinataire (en supposant au passage que celui-ci est de la forme "smtp.nomdedommaine" ce qui n'est pas forcement le cas mais c'est une autre histoire). Sauf que, si j'ai bien compris le principe de fonctionnement de l'envoi de messages, tu doit envoyer le message au serveur smtp de l'expéditeur (smtp.afd50manche.fr) et c'est ce serveur qui s'occupe de transmettre le message au(x) serveur(s) smtp du/des destinataire(s) .
PS : Essaye d'envoyer un message à l'adresse dynamique marqué sur https://www.mail-tester.com/ pour vérifier que le FAI de l'asso ne l'ai pas mise sur une adresse ip consif=dérée comme étant émetteuse de SPAM

Dernière modification par Naheulf le lun. 23/sept./2019 14:45, modifié 1 fois.
Re: Enregistrement et envois de courriers et de courriels
Merci Naheulf, effectivement Debug SendMail(#Courriel, Smtp) renvoie 0, pourtant le programme me dit que le mail a été envoyé avec succès.
c'est vrai que Smtp = "smtp." + StringField(Destinataire, 2, "@") je n'ai pas trouvé mieux. Il faudrait peut-être que je crée une Map() où la clé serait justement ça, par contre je ne vois pas sfr dans la liste des FAI. Je ne me sent pas sorti de l'auberge.
c'est vrai que Smtp = "smtp." + StringField(Destinataire, 2, "@") je n'ai pas trouvé mieux. Il faudrait peut-être que je crée une Map() où la clé serait justement ça, par contre je ne vois pas sfr dans la liste des FAI. Je ne me sent pas sorti de l'auberge.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Un homme doit être poli, mais il doit aussi être libre !
Re: Enregistrement et envois de courriers et de courriels
Le SMTP à utiliser est celui du FAI par lequel tu es connecté et non-pas celui du destinataire.
Donc si par exemple tu es chez free.fr tu dois utiliser smtp.free.fr peu importe le destinataire.
Un serveur SMTP n'accepte en entrée que les mails de ses propres abonnés.
Sois directement quand on est connecté par lui, sois indirectement (par authentification) si on est connecté par un autre FAI.

Donc si par exemple tu es chez free.fr tu dois utiliser smtp.free.fr peu importe le destinataire.
Un serveur SMTP n'accepte en entrée que les mails de ses propres abonnés.
Sois directement quand on est connecté par lui, sois indirectement (par authentification) si on est connecté par un autre FAI.

Re: Enregistrement et envois de courriers et de courriels
Un grand merci Marc56, ça a le mérite d'être clair et ça change tout dans ces conditions, je m'en vais essayer ta méthode avec enthousiasme.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Un homme doit être poli, mais il doit aussi être libre !
Re: Enregistrement et envois de courriers et de courriels
En fait, j'ai trouvé pourquoi ça ne fonctionnait plus, tout simplement c'est à cause du passage de la fibre optique à Coutances et comme je n'arrivais pas à m'auto envoyer des mails, ça a fait tilt et n'ayant qu'un unique smtp, c'est beaucoup plus simple à mettre en œuvre. Merci encore à marc56.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Un homme doit être poli, mais il doit aussi être libre !
- microdevweb
- Messages : 1802
- Inscription : mer. 29/juin/2011 14:11
- Localisation : Belgique
Re: Enregistrement et envois de courriers et de courriels
J'ai été confronté à l'envoie de mail dernièrement. Perso j'ai créer un compte gratuit sur
https://serversmtp.com/
La limite de 1000 email par mois donc de quoi faire.
https://serversmtp.com/
La limite de 1000 email par mois donc de quoi faire.
Windows 10 64 bits PB: 5.70 ; 5.72 LST
Work at Centre Spatial de Liège
Work at Centre Spatial de Liège
Re: Enregistrement et envois de courriers et de courriels
Merci microdevweb pour le lien, c'est bon à savoir.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Un homme doit être poli, mais il doit aussi être libre !