Sneding SMTP Mail с Office365 от SQL2000 DTS

мы перешли с общего узла электронной почты Exchange на Office 365. У нас есть некоторые старые sql2000 DTS Active X скрипты (vbscript) отправки почты, которые перестали работать сейчас. Мы отправляем с помощью CDO и соединяемся с SMTP. Я не верю, что что-то на сервере или в нашей сети изменилось, но не на 100% уверен. Ниже приведен vbscript. Мы получаем» транспорт не удалось подключиться к серверу » ошибка на .Отправить строку. Есть идеи, как это исправить?

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

‘Visual Basic ActiveX Script
‘************************************************************************

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

1 ответ

  1. Я обнаружил, что если я указал SSL true, то я должен был прокомментировать строку, указывающую порт 587.