我有IIS的SMTP服务器设置为一个封闭的中继,它的工作很好。 我也有一个写EML文件的应用程序。 如果EML文件被写入临时目录,然后移动到服务器的Pickup目录,电子邮件按预期发送。 但是,如果我有应用程序直接将EML文件写入Pickup目录,则电子邮件通常无法发送。
这似乎是一个竞争条件:即使应用程序尚未完成写入,服务器在Pickup中检测到EML文件时也立即开始处理EML文件。 其结果是服务器认为EML格式不正确,并将其踢到死信。
虽然我非常欣赏服务器的热情,但似乎需要在这种情况下拨回一点。 有谁知道IIS的SMTP服务器的轮询频率是否可以configuration?
我正在使用IIS7,Windows Server 2008 R2。 写入EML的应用程序不能被修改。
IIS SMTP服务将在文件系统报告它们在那里时立即拿起这些文件,因此不需要configuration时间间隔。 我们使用Windows Server 2003上的SMTP和IIS6在拾取文件夹中做同样的事情,没有任何问题。 我们还没有尝试IIS7,但它听起来像他们可能已经改变了它的方式观看文件。 您可以尝试将文件写入其他文件夹,然后安排batch file将其全部移动到拾取文件夹,每分钟一次,以查看是否有助于避免此问题。