IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[SmtpClient] Envoi de mails


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Nadd
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 160
    Par défaut [SmtpClient] Envoi de mails
    Bonsoir,

    Je suis actuellement en train de finaliser le développement d'un logiciel de gestion de commandes chargé, entre autres choses, d'envoyer un message électronique contenant un fichier PDF au client ayant réglé le paiement de sa commande.

    Pour ce faire, j'utilise exactement le même code C# employé pour le développement du site web associé, qui lui fonctionne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
                SmtpClient smtpClient = new SmtpClient();
                smtpClient.Host = "mail.ikoula.fr";
                smtpClient.UseDefaultCredentials = false;
                smtpClient.Credentials = new NetworkCredential("XXX", "YYY");
     
                smtpClient.Send(mailMessage);
    Le site web et la base de données sont naturellement hébergés chez Ikoula. Étant donné que l'envoi de mails fonctionne via le site web mais pas depuis mon ordinateur, je me doute que mon problème se situe au niveau du caractère "non-local" de l'envoi de mails.

    Dès lors, soit quelque chose manque à mon code, soit Ikoula n'autorise pas ce genre de choses.

    Dans le premier cas, que puis-je faire ?
    Dans le second cas, auriez-vous un autre serveur SMTP à me proposer ?

    En vous remerciant d'avance,

    Nicolas.

  2. #2
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Citation Envoyé par nadd
    Dans le premier cas, que puis-je faire ?
    Etre plus precis et complet dans l'exposé de ton probleme
    Entre autre :

    Quel est le problème ?
    Comment est défini mailMessage ?

    Citation Envoyé par nadd
    Dans le second cas, auriez-vous un autre serveur SMTP à me proposer ?
    Essaye d'abord d'expliquer comment tu utilise ton client actuel et les difficultés que tu rencontre

  3. #3
    Membre confirmé Avatar de Nadd
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 160
    Par défaut
    Bonjour,

    Veuillez m'excuser de répondre si tard, mais ces quelques jours n'ont pas été de tout repos.

    Citation Envoyé par olibara
    Etre plus precis et complet dans l'exposé de ton probleme
    Entre autre :

    Quel est le problème ?
    Comment est défini mailMessage ?
    J'en avais oublié l'essentiel...

    J'obtiens à l'exécution une exception dont le message affiche :
    Unable to connect to the remote server.
    Le MailMessage est construit ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    private MailMessage mailMessage;
     
    public MailSender(string from, string displayName, string to, string subject, string body)
    {
         mailMessage = new MailMessage();
         mailMessage.From = new MailAddress(from, displayName);
         mailMessage.To.Add(new MailAddress(to));
         mailMessage.Subject = subject;
         mailMessage.Body = body;
    }
     
    public void AddAttachment(string filename)
    {
        mailMessage.Attachments.Add(new Attachment(filename));
    }
    Voici un exemple d'utilisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    OrderPDFCreator pdf = new OrderPDFCreator();
    pdf.CreatePDF(order);
     
    MailSender mail = new MailSender("mailsender@XXX.YY", "XXX - Gestion des commandes", order.CustomerEmail, "Commande " + order.OrderRef, "TEXT");
     
    mail.AddAttachment("Commandes/" + order.OrderRef + ".pdf");
    mail.Send();
    Comme je l'ai déjà dit, l'envoi de mails fonctionne à partir du site web hébergé chez Ikoula, mais pas sur mon PC, pourtant avec les mêmes paramètres.

    En vous remerciant d'avance,

    Nicolas.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    82
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2007
    Messages : 82
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(serveurSMTP, Convert.ToInt32(noPort);
    client.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
    Pour le smtp, normallement tu devrais prendre celui de ton fournisseur internet ainsi que son port smtp qui peut varier d'un fournisseur à l'autre vérifie sur le site internet de ton fournisseur.

  5. #5
    Membre confirmé Avatar de Nadd
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 160
    Par défaut
    Bonsoir,

    Malheureusement, corrigez-moi si je me trompe, cette solution ne me permettra pas d'envoyer un message électronique à partir de l'adresse email hébergée chez Ikoula.

    Toutefois, peut-être pourrais-je développer un service web qui serait exploité par mon application ? Même si j'avoue n'avoir jamais tenté ce genre de choses...

    Amicalement,

    Nicolas.

  6. #6
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2008
    Messages : 381
    Par défaut
    Citation Envoyé par Nadd Voir le message
    Toutefois, peut-être pourrais-je développer un service web qui serait exploité par mon application ?
    Tout à fait!

    C'est même exactement le même code.

Discussions similaires

  1. Envoi de mails : CDO ou SMTPClient
    Par jocou dans le forum VB.NET
    Réponses: 1
    Dernier message: 28/11/2012, 15h34
  2. Envoi de mail au format Rich-Text
    Par LineLe dans le forum ASP
    Réponses: 4
    Dernier message: 29/10/2003, 16h27
  3. envoi de mail avec attachement de fichier
    Par GMI3 dans le forum Modules
    Réponses: 2
    Dernier message: 24/09/2003, 11h22
  4. Outlook ne se ferme pas après un envoi de mail
    Par Joke dans le forum VBA Access
    Réponses: 2
    Dernier message: 07/06/2003, 17h32
  5. envoi de mail, protocol SMTP langage C
    Par Heimdall dans le forum Développement
    Réponses: 2
    Dernier message: 23/05/2003, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo