【问题标题】:Sneding SMTP Mail with Office365 from SQL2000 DTS从 SQL 2000 DTS 使用 Office 365 发送 SMTP 邮件
【发布时间】:2016-08-27 23:05:27
【问题描述】:

我们已从共享 Exchange 电子邮件主机迁移到 Office 365。我们有一些旧的 SQL2000 DTS Active X 脚本 (vbscript) 正在发送邮件,这些脚本现在已经停止工作。我们使用 CDO 发送并使用 SMTP 连接。我不相信服务器或我们的网络上的任何东西都发生了变化,但不是 100% 肯定。下面是vbscript。我们在 .Send 行收到“传输无法连接到服务器”错误。有关如何解决此问题的任何想法?

'**********************************************************************

' Visual Basic ActiveX 脚本 '****************************************************** ***********************

Function Main()
    '# Get a preconfigured "CDO.Message" object
    Set oMail = GetCdoMessageObject()

    '# Send email
    With oMail
        .From = "mailsend@ourdomain.com"
        .To = "me@ourdomain.com"
        .Subject = "test to cfoster@ourdomain.coml"
        .TextBody = "This message was sent from a DTS package."
        .HtmlBody = "<div><p>This <i>message</i> was sent from a <b>DTS</b> package.</p></div>"
        .Send
    End With

    '# Clean Up
    Set oMail = Nothing

    '# Return
    Main = DTSTaskExecResult_Success
End Function

Function GetCdoMessageObject()
    Dim CdoMessage
    Set CdoMessage = CreateObject("CDO.Message")
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 'CdoSendUsingPort
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver") ="smtp.office365.com"
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 587
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") =  True  'Use SSL for the connection (True or False)
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 'cdoBasic
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") ="mailsend@ourdomain.com"
    CdoMessage.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") ="passwordhere"
    CdoMessage.Configuration.Fields.Update

    Set GetCdoMessageObject = CdoMessage
End Function

【问题讨论】:

    标签: email vbscript sql-server-2000 dts


    【解决方案1】:

    我发现如果我指定 SSL 为 true,那么我必须注释掉指定端口 587 的行。

    【讨论】:

      猜你喜欢
      • 2019-12-22
      • 1970-01-01
      • 2021-12-09
      • 1970-01-01
      • 2011-09-08
      • 2021-05-13
      • 1970-01-01
      • 2018-01-31
      相关资源
      最近更新 更多