Symptômes
Lorsque vous essayez d’envoyer par programme un message électronique au serveur SMTP local à l’aide de la méthode Envoyer dans Microsoft Dynamics AX 4.0, le message électronique n’est pas envoyé. En outre, le message d’erreur suivant s’affiche :
Remarque
La méthode 'send' dans l’objet COM de la classe 'CDO. Le code d’erreur renvoyé par le message 0x80040213 (<inconnu>) signifie : Le transport n’a pas réussi à se connecter au serveur.
Cause
Ce problème peut se produire lorsque les conditions suivantes sont remplies :
- Le serveur SMTP local se trouve sur un ordinateur qui exécute Microsoft Windows Server 2003.
- L’adresse IP (Internet Protocol) du serveur virtuel SMTP est définie sur l’adresse IP de l’ordinateur local.
Résolution
Pour résoudre ce problème, modifiez l’adresse IP du serveur virtuel SMTP pour qu’elle utilise l’option Tous les non affectés , puis exécutez le code pour envoyer le message électronique par programme.
Pour changer l’adresse IP du serveur virtuel SMTP, procédez comme suit :
- Cliquez sur Démarrer, pointez sur Tous les programmes, sur Outils d’administration, puis cliquez sur le Gestionnaire des services IIS.
- Développez le serveur Microsoft Dynamics AX 4.0.
- Cliquez avec le bouton droit sur Serveur virtuel SMTP par défaut, puis cliquez sur Propriétés.
- Sous l’onglet Général , cliquez sur (Tous non attribués) dans la zone Adresse IP .
- Cliquez sur OK pour fermer la boîte de dialogue Propriétés par défaut du serveur virtuel SMTP .
Informations supplémentaires
Microsoft fournit des exemples de programmation à des fins d’illustration uniquement, sans garantie exprimée ou implicite. Cela inclut, sans s’y limiter, les garanties implicites de qualité commerciale ou d’adéquation à un usage particulier. Cet article part du principe que vous êtes familiarisé avec le langage de programmation présenté et avec les outils utilisés pour créer et déboguer des procédures. Les ingénieurs du support Microsoft peuvent vous aider à expliquer les fonctionnalités d’une procédure particulière. Toutefois, ils ne modifient pas ces exemples pour fournir des fonctionnalités supplémentaires ou créer des procédures pour répondre à vos besoins spécifiques.
Le code suivant est un exemple d’envoi programmatique d’un message électronique à l’aide de la méthode Send dans Microsoft Dynamics AX 4.0.
static void SysMailer(Args _args)
{
SysMailer mailer;
;
mailer = new SysMailer();
mailer.body("This is the body of the mail");
mailer.subject("The message subject");
mailer.fromAddress("alias@domain");
mailer.tos().appendAddress("alias@domain");
mailer.SMTPRelayServer("domain_name_of_SMTP_Server");
mailer.sendMail();
pause;
}
Si vous utilisez la fonctionnalité d’alerte pour être averti par messages contextuels ou électroniques, vous devrez peut-être vérifier que les paramètres sont corrects dans le Gestionnaire des services Internet (IIS). Pour ce faire, procédez comme suit :
- Dans le Gestionnaire des services Internet (IIS), développez le serveur Microsoft Dynamics AX 4.0.
- Cliquez avec le bouton droit sur le serveur virtuel SMTP par défaut. Cliquez ensuite sur Propriétés.
- Cliquez sur l’onglet Accès .
- Cliquez sur Connexions.
- Vérifiez que l’option « Tous sauf la liste ci-dessous » est sélectionnée. Ou, si l’option « Uniquement la liste ci-dessous » est sélectionnée, vérifiez que la liste n’est pas vide.
- Dans la fenêtre Connexion, cliquez sur OK pour accepter la modification.
- Cliquez sur Relais. Répétez les étapes 5 à 6.
- Vérifiez que l’option Tous sauf la liste ci-dessous est sélectionnée. Ou, si l’option « Uniquement la liste ci-dessous » est sélectionnée, vérifiez que la liste n’est pas vide.