了解Microsoft的CDO.Message脱机行为

时间:2008-11-10 22:32:29

标签: email messaging email-integration

我正在使用CDO.Message类来创建和发送来自Visual FoxPro应用程序的电子邮件。我已经测试过它可以在用户连接到互联网时工作,并且它甚至可以在我从网络断开连接时发送,它只是在客户端重新连接时发送。我对CDO.Message类的.Send()方法的一个问题是它不返回任何成功/失败值(尽管如果它不能发送,该对象将抛出异常)。电子邮件消息似乎永远不会在用户的Outlook“发件箱”或类似的任何显而易见的东西中等待,但它似乎正在某个地方等待它发送的网络连接。

我遇到的问题是:在应用程序离线时,我在哪里打电话给.Send()的CDO.Message电子邮件?它是否有最终的超时/失败条件?

我试图避免“programming by coincidence”关于CDO.Message如何工作的任何线索。

1 个答案:

答案 0 :(得分:1)

除非您明确指定,否则您在本地计算机上使用SMTP服务器。如果是这样,应用程序将把邮件丢弃在本地SMTP服务器的出站队列中,并且应用程序对Send()的调用将始终成功(如果您的SMTP服务器正在运行且您的邮件格式正确)。您可以在SMTP服务中设置“出站过期超时”属性,以指定从出站队列中删除邮件之前的旧邮件数。

LSoft有nice guide用于在IIS 6中配置SMTP服务以与其LISTSERV软件包一起使用。