2008-11-10 6 views
1

J'utilise la classe CDO.Message pour créer et envoyer un courrier électronique à partir d'une application Visual FoxPro. J'ai testé que cela fonctionne pendant que l'utilisateur est connecté à Internet, et il semble même fonctionner quand j'envoie tout déconnecté du réseau, il est simplement envoyé lorsque le client se reconnecte. Un problème que j'ai avec la méthode .Send() de la classe CDO.Message est qu'il ne renvoie aucune valeur succès/échec (bien que l'objet lèvera une exception s'il ne peut pas envoyer). Le message électronique ne semble jamais attendre dans Outlook Outbox de l'utilisateur ou quoi que ce soit d'évident, mais il semble attendre quelque part une connexion Web à laquelle il envoie.Comprendre le comportement hors ligne de CDO.Message de Microsoft

La question que j'ai est: D'où vient l'email CDO.Message que j'ai appelé .Send() lorsque l'application est hors ligne? Et a-t-il un éventuel délai d'attente/échec? J'essaie d'éviter "programming by coincidence" des indices sur la façon dont fonctionne CDO.Message serait utile.

Répondre

1

Sauf indication contraire explicite, vous utilisez un serveur SMTP sur la machine locale. Si c'est le cas, l'application supprimera le message dans la file d'attente sortante du serveur SMTP local et l'appel de votre application à Send() sera toujours réussi (si votre serveur SMTP est en cours d'exécution et que votre message est correctement formaté). Vous pouvez définir la propriété Outout Expiration timeout dans le service SMTP pour spécifier l'ancienneté des messages avant qu'ils ne soient supprimés de la file d'attente sortante.

LSoft a un nice guide pour configurer le service SMTP dans IIS 6 pour l'utiliser avec leur package LISTSERV.

+0

Hey une réponse! Merci, Scott. Accepté. –

Questions connexes