Добавление заявления об отказе к исходящим сообщениям SMTP с помощью Visual Basic

Эта статья помещена в архив. Она предлагается "как есть" и обновляться не будет.
Версия данной статьи для Microsoft Visual Basic:317327.
Аннотация
В данной статье приведены подробные инструкции по использованию обработчика событий протокола SMTP для добавления отказа к исходящим электронным сообщениям SMTP.

Создание обработчика событий

Для создания обработчика событий вставьте следующий код в новый файл и сохраните его под именем EventSinkScript.vbs.
<SCRIPT LANGUAGE="VBScript">Sub ISMTPOnArrival_OnArrival(ByVal Msg, EventStatus)   TextDisclaimer = vbCrLf & "DISCLAIMER:" & vbCrLf & "Sample Disclaimer added in a VBScript."   HTMLDisclaimer = "<p></p><p>DISCLAIMER:<br>Sample Disclaimer added in a VBScript."   If Msg.HTMLBody <> "" Then      'Search for the "</body>" tag and insert our disclaimer before that tag.      pos = InStr(1, Msg.HTMLBody, "</body>", vbTextCompare)      szPartI = Left(Msg.HTMLBody, pos - 1)      szPartII = Right(Msg.HTMLBody, Len(Msg.HTMLBody) - (pos - 1))      Msg.HTMLBody = szPartI + HTMLDisclaimer + szPartII   End If   If Msg.TextBody <> "" Then      Msg.TextBody = Msg.TextBody & vbCrLf & TextDisclaimer & vbCrLf   End If       'Commit the content changes to the transport ADO Stream object.   Msg.DataSource.Save ' Commit the changes into the transport Stream   EventStatus = cdoRunNextSinkEnd Sub</SCRIPT>

Регистрация обработчика событий

Чтобы зарегистрировать обработчик событий, используйте файл Smtpreg.vbs, установленный вместе с пакетом Exchange SDK. Используя командную строку, найдите папку ...\Exchange SDK\SDK\Support\CDO\Scripts и введите следующие данные (проверьте, чтобы путь к файлу EventSinkScript.vbs был правильным):
cscript smtpreg.vbs /add 1 onarrival SMTPScriptingHost CDO.SS_SMTPOnArrivalSink "mail from=*@your-domain-here.com"
cscript smtpreg.vbs /setprop 1 onarrival SMTPScriptingHost Sink ScriptName "C:\EventSinkScript.vbs"
В случае успешного выполнения этой команды пользователь получит соответствующее сообщение, созданное сценарием.

Чтобы отменить регистрацию этого события, введите:
cscript smtpreg.vbs /remove 1 OnArrival SMTPScriptingHost
Дополнительные сведения о регистрации файла Smtpreg.vbs см. в разделе «Managing Event Bindings» (Управление привязками событий) на веб-узле MSDN по адресу: Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
324021 Создание обработчика почтового ящика «catchall» для Exchange 2000 (Эта ссылка может указывать на содержимое полностью или частично на английском языке.)

Тестирование приемника событий

Чтобы протестировать приемник событий, отправьте электронное сообщение SMTP получателю за пределами организации. Он должен получить измененное сообщение с отказом в конце сообщения.

Примечание. При использовании MAPI-клиента, например Microsoft Outlook, для отправки электронных сообщений получателю будет доставлено сообщение без изменений. Это связано с тем, что сообщения, отправляемые при помощи MAPI, имеют другой формат (не SMTP) в момент срабатывания приемника событий транспорта SMTP. В результате изменения, вносимые программным кодом события, не сохраняются.
Ссылки
Дополнительные сведения см. в следующей статье базы знаний Майкрософт:
273233 Не удается изменить сообщения MAPI в приемнике событий SMTP (Эта ссылка может указывать на содержимое полностью или частично на английском языке.)
Свойства

Номер статьи: 317680 — последний просмотр: 12/07/2015 08:56:29 — редакция: 9.5

Microsoft Exchange Server 2003 Enterprise Edition, Microsoft Exchange Server 2003 Standard Edition, Microsoft Exchange 2000 Server Standard Edition, Collaboration Data Objects for Exchange 2000, Microsoft Collaboration Data Objects 2.0

  • kbnosurvey kbarchive kbhowtomaster KB317680
Отзывы и предложения