首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CDO smtp邮件突然无法发送

CDO smtp邮件突然无法发送
EN

Stack Overflow用户
提问于 2014-09-01 21:44:18
回答 1查看 2.1K关注 0票数 0

因此,我有以下代码,用于从Excel VBA发送电子邮件。代码一直运行得很好,直到今天早上,由于没有明显的原因,宏工作了,但是没有任何东西到达目标地址!这是SMTP中继问题吗?如果是,我该如何解决它?或者这可能是"http://schemas.microsoft.com/cdo/configuration“的问题(我仍然不知道它是如何工作的!)

下面是宏-只是为了保护无辜而更改了名称:)

代码语言:javascript
复制
Sub CDO_Mail()
    Dim iMsg As Object
    Dim iConf As Object
    Dim strbody As String
    Dim Flds As Variant

    Set iMsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")

    iConf.Load -1    ' CDO Source Defaults
    Set Flds = iConf.Fields
    With Flds
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "Mick@mouse.com" 
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "BigSecret"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "auth.smtp.1and1.fr"

        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
        .Update
    End With
        With iMsg
        Set .Configuration = iConf
        .To = "MyEmailAddress@gm.com"
        .CC = ""
        .BCC = ""
        .From = "TheMainMan"
        .Subject = "Important message"
        .TextBody = "BODYTEXT"
        .Send

    End With
End Sub
EN

回答 1

Stack Overflow用户

发布于 2014-09-01 22:07:36

请尝试使用早期绑定。这还有一个额外的好处,那就是可以使用自动完成功能。您的配置可以这样设置:

代码语言:javascript
复制
Dim iConf As CDO.Configuration

Set iConf = New CDO.Configuration ' CreateObject("CDO.Configuration")
With iConf.Fields
    .Item(cdoSendUsingMethod) = cdoSendUsingPort
    .Item(cdoSMTPServerPort) = 465
    .Item(cdoSMTPServer) = "auth.smtp.1and1.fr"
    .Item(cdoSendUserName) = "Mick@mouse.com" 
    .Item(cdoSendPassword) = "BigSecret"
    'etc.
    .Update
End With

要使用此功能,您需要设置一个对CDO库的显式引用: Tools > reference > set checkmark旁边的Microsoft CDO。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25607194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档