Тема: Отправка сообщений через внешнюю почту (CDO)
Код:
public sub send_notification(to_address, body, subject, from_address) 'if from_address = empty then if from_address = "" then from_address = ThisApplication.CurrentUser.Mail if from_address = "" then from_address = "xxx@yyy.ru" if subject = empty then subject = "Уведомление системы электронного документооборота (TDMS)" Set objConf = CreateObject("CDO.Configuration") Set objEmail = CreateObject("CDO.Message") Set objFlds = objConf.Fields With objFlds .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 'cdoSendUsingPort это порт .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "10.20.111.222" ' Имя SMTP сервера .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 2 .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 .Update End With Set objEmail.Configuration = objConf objEmail.From = from_address objEmail.To = to_address objEmail.Subject = subject 'objEmail.Textbody = body objEmail.HTMLBody = body objEmail.DSNOptions = 14 'Success, failure or delay (cdoDSNSuccessFailOrDelay) objEmail.Fields.Update objEmail.Send end sub
Код взят с этого форума и работает на всех машинах... кроме одной (пока одной).
На этой машине на последней строке (objEmail.Send) получаем ошибку "транспорту не удалось подключиться к серверу", письмо не уходит.
ТДМС и Офис переставляли.
Кроме того, на этой же машине замечена ещё одна странность - не открываются ссылки tdms://...
Точнее они до ТДМС доходят, но в обработчике OnDDE Command == "is_tray_allow" вместо "locate" или "edit", и object == nothing. Даже если ссылка tdms://locate/{...}
Никто не сталкивался? В чём может быть дело?
P.S. Win7x64, Office2010x64, TDMS 4.0.235.1
P.P.S. Переписал этот код на C# (в виде самостоятельного exe) - тоже самое, т.е. ТДМС-то как бы ни причём, хотя опять же is_tray_allow - это чьё?