asp-classic - cdoSendUsingPort 给出 8004020f 但 cdoSendUsingPickup 有效

标签 asp-classic vbscript iis-6 smtp

我正在使用 cdo 发送电子邮件,以下代码失败

Set cdoConfig = CreateObject("CDO.Configuration")

With cdoConfig.Fields
    .Item(cdoSendUsingMethod) = cdoSendUsingPort
    .Item(cdoSMTPServer) = "localhost"
    .Update
End With 

当我发送电子邮件时,出现以下错误

8004020f

然后我将代码更改为以下内容:

Set cdoConfig = CreateObject("CDO.Configuration")

With cdoConfig.Fields
    .Item(cdoSendUsingMethod) = cdoSendUsingPickup
    .Item(cdoSMTPServer) = "localhost"
    .Update
End With 

电子邮件发送没有问题。我可以采取哪些步骤来排除 cdoSendUsingPort 不起作用的原因?

最佳答案

通过 cdoSendUsingPort,CDO 尝试打开到 SMTP 的连接您在 TCP 端口 25 上指定的服务器(在您的情况下为 localhost)。我猜您没有在计算机上运行 SMTP 服务器,因此没有任何内容在监听端口 25并且调用失败。

通过 cdoSendUsingPickup,CDO 将消息转发至 pickup directory您的本地 IIS 实例以供稍后处理。我猜您的计算机上安装了 IIS,并且其 SMTP 模块配置为使用拾取,因此调用成功。

关于asp-classic - cdoSendUsingPort 给出 8004020f 但 cdoSendUsingPickup 有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3987470/

相关文章:

javascript - 每隔几分钟在页面之间切换

scripting - 如何查找已安装的 Windows 脚本宿主语言

MySQL ODBC 5.1 驱动程序向 ADODB 返回错误的数据类型

python - 如何在批处理/Python中编辑XML文件

asp-classic - 无法创建ActiveX对象

caching - 从 HTTP header 获取响应

vbscript - 如何使用 VB 脚本以静默模式运行 telnet?

iis-7 - IIS 6.0 与 IIS 7.0 之间的区别

jquery - 为什么我的 PostBack 发生在 jQuery 单击事件之前?

asp.net - session 在 20 分钟后过期 : Whether idle or not