:: Visual Foxpro, Foxpro for DOS
Автоматизация отправки почты
comsel
Автор

Сообщений: 947
Откуда: Москва
Дата регистрации: 20.09.2007
Доброго здравия всем.

Нашел чужой класс по отправке почты. Что-то не соображу как вставить e-mail отправителя:

IF THIS.PARENT.LogSession && Check if the user was able to login
THIS.PARENT.OleMMess.SessionId = THIS.PARENT.OleMSess.SessionId
* Start a new mail message and build the text
THIS.PARENT.OleMMess.Compose
THIS.PARENT.OleMMess.recipdisplayname = sendto
THIS.PARENT.OleMMess.msgnotetext = sendnote
THIS.PARENT.OleMMess.msgsubject = sendsubject
THIS.PARENT.OleMMess.AttachmentPathName = ALLTRIM(sendattach)
THIS.PARENT.OleMMess.AttachmentType = 0
THIS.PARENT.OleMMess.Send(2)
ENDIF && Login Test

Хотел сюда прицепить vcx, но не нашел как
Ratings: 0 negative/0 positive
Re: Автоматизация отправки почты
AngelOKES

Сообщений: 828
Дата регистрации: 08.02.2012
Рабочий код:
lfFile1=gcDP+"\SlDoc\Служебная записка N"+mMKR+" - "+mNNN+"(1).docx"
lfFile2=gcDP+"\SlDoc\Служебная записка N"+mMKR+" - "+mNNN+"(2).docx"
lfFile3=gcDP+"\SlDoc\Служебная записка N"+mMKR+" - "+mNNN+"(3).docx"
If File(lfFile1) Or File(lfFile2) Or File(lfFile3)
#Define ChmCfgPref "http://schemas.microsoft.com/cdo/configuration/"
#Define cdoSendUsingMethod ChmCfgPref + "sendusing"
#Define cdoSMTPServer ChmCfgPref + "smtpserver"
#Define cdoSMTPServerPort ChmCfgPref + "smtpserverport"
#Define cdoSMTPAccountName ChmCfgPref + "smtpaccountname"
#Define cdoSMTPAuthenticate ChmCfgPref + "smtpauthenticate"
#Define cdoSendUserName ChmCfgPref + "sendusername"
#Define cdoSendPassword ChmCfgPref + "sendpassword"
#Define cdoSendUsingPort 2
#Define cdoBasic 1
#Define MySmtpServer "**************"
#Define AccountName "**************"
#Define UserName "**************"
#Define UserPassword ""
#Define AddressFrom lct11t3+" <"+lct11t4+">"
#Define AddressTo "<"+lct11t2+">"
#Define AddressCC "<"+lct11t6+">"
Local loCfg As CDO.Configuration
loCfg = Createobject("CDO.Configuration")
With loCfg.Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
.Item(cdoSMTPServer) = MySmtpServer
.Item(cdoSMTPServerPort) = 25
.Item(cdoSMTPAuthenticate) = cdoBasic
.Item(cdoSMTPAccountName) = AccountName
.Item(cdoSendUserName) = UserName
.Item(cdoSendPassword) = UserPassword
.Update()
Endwith
Local loMsg As CDO.Message
loMsg = Createobject("CDO.Message")
With loMsg
.Configuration = loCfg
.BodyPart.Charset = "windows-1251"
If File(lfFile1)
.AddAttachment(lfFile1)
Endif
If File(lfFile2)
.AddAttachment(lfFile2)
Endif
If File(lfFile3)
.AddAttachment(lfFile3)
Endif
.From = AddressFrom
.To = AddressTo
.CC = AddressCC
.Subject = lcSub
.TextBody = lcBody
.Send()
Endwith
Else
Messagebox('сформируйте файл',32,'')
Endif
Ratings: 0 negative/0 positive
Re: Автоматизация отправки почты
comsel
Автор

Сообщений: 947
Откуда: Москва
Дата регистрации: 20.09.2007
Почему-то "Транспорту не удалось подключиться к серверу"
Ratings: 0 negative/0 positive
Re: Автоматизация отправки почты
Равиль

Сообщений: 6554
Откуда: Уфа
Дата регистрации: 01.08.2003
На первый взгляд - номер порта уже давно по-умолчанию не 25, а 465 и SSL шифрование нужно

...
#Define cdoSMTPuseSSL ChmCfgPref + "smtpusessl"
...
.Item(cdoSMTPServerPort) = 465 && 25
.Item(cdoSMTPuseSSL) = .t. && SSL шифрование
...


------------------
Тяжело согнать курсором муху с монитора ...
Ratings: 0 negative/0 positive
Re: Автоматизация отправки почты
comsel
Автор

Сообщений: 947
Откуда: Москва
Дата регистрации: 20.09.2007
Спасибо всем. Всё удачно.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 20 AndyNigmatec alex;  (Гостей: 18)

© 2000-2024 Fox Club 
Яндекс.Метрика