SendMail vs OutLook
Скачать (rar-файл; Размер - 93299)Обсудить в форуме
Описание
аналог sendmail под Windows. можно вызовать из userXfin.mac, и из других макросов.
на вход текстовый файл вида:
Host:smtp.mail.ru
Port:25
UserID:mailrobot
Password:pswd
FROM:mailrobot
TO:support@softlab.ru
BCC:7903ххххххх@sms.beemail.ru
FILE:sendmail.dpr
FILE:1.txt
SUBJECT:тУвБОЛ УОПЧБ ЛПМВБУЙФ!
тУвБОЛ УОПЧБ ЛПМВБУЙФ!
из командной строки выглядит так:
sendmail.exe < "имяфайла"
из макроса чтото типа:
Run ("sendmail.exe "," < имяфайла");
можно рассылать уведомления клиентам, типа "На Ваш счет поступило 100р. от ООО "АБВГД" и т.п.
на вход текстовый файл вида:
Host:smtp.mail.ru
Port:25
UserID:mailrobot
Password:pswd
FROM:mailrobot
TO:support@softlab.ru
BCC:7903ххххххх@sms.beemail.ru
FILE:sendmail.dpr
FILE:1.txt
SUBJECT:тУвБОЛ УОПЧБ ЛПМВБУЙФ!
тУвБОЛ УОПЧБ ЛПМВБУЙФ!
из командной строки выглядит так:
sendmail.exe < "имяфайла"
из макроса чтото типа:
Run ("sendmail.exe "," < имяфайла");
можно рассылать уведомления клиентам, типа "На Ваш счет поступило 100р. от ООО "АБВГД" и т.п.
Текст примера
{$APPTYPE CONSOLE} Program SendMail; Uses SysUtils, IdMessage, IdSMTP; Var ss, s : AnsiString; MESS : TIdMessage; SMTP : TIdSMTP; Begin SMTP:=TIdSMTP.Create(nil); MESS:=TIdMessage.Create(nil); SMTP.Port:=25; ss:=''; while(true)do begin ReadLn(s); if(UpperCase(Copy(s,1,5))='HOST:') then SMTP.Host := Copy(s,6,length(s)) else if(UpperCase(Copy(s,1,5))='PORT:') then SMTP.Port := StrToInt(Copy(s,6,length(s))) else if(UpperCase(Copy(s,1,7))='USERID:') then SMTP.UserID := Copy(s,8,length(s)) else if(UpperCase(Copy(s,1,8))='PASSWORD:')then SMTP.Password := Copy(s,9,length(s)) else if(UpperCase(Copy(s,1,5))='FROM:') then MESS.From.Text := Copy(s,6,length(s)) else if(UpperCase(Copy(s,1,3))='TO:') then MESS.Recipients.EMailAddresses := Copy(s,4,length(s)) else if(UpperCase(Copy(s,1,3))='CC:') then MESS.CCList.EMailAddresses := Copy(s,4,length(s)) else if(UpperCase(Copy(s,1,3))='BCC:') then MESS.BccList.EMailAddresses := Copy(s,5,length(s)) else if(UpperCase(Copy(s,1,8))='SUBJECT:') then MESS.Subject := Copy(s,9,length(s)) else if(UpperCase(Copy(s,1,5))='FILE:') then TIdAttachment.Create(MESS.MessageParts, Copy(s,6,length(s))) else if(s='')then break else ss:=s+''; end; MESS.Body.Add(ss); SMTP.AuthenticationType := atNone; try SMTP.Connect; except on E: Exception do begin writeln('Error: SMTP.Connect'); writeln(E.Message); Halt(1); end; end; try SMTP.Send(MESS); writeln('OK.'); except on E: Exception do begin writeln('Error: SMTP.Send'); writeln(E.Message); Halt(2); end; end; try SMTP.Disconnect; SMTP.Free; MESS.Free; except on E: Exception do begin writeln(E.Message); Halt(3); end; end; End.