Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- idSMTP1:=TIdSMTP.Create(nil);
- idmessage1:=Tidmessage.Create(nil);
- idSMTP1.OnWork:=IdSMTP1Work;
- idSMTP1.OnWorkBegin:=IdSMTP1WorkBegin;
- idSMTP1.OnWorkEnd:=IdSMTP1WorkEnd;
- idSMTP1.OnStatus:=IdSMTP1Status;
- idSMTP1.ConnectTimeout:=10000;
- idSMTP1.ReadTimeout:=60000;
- SysLocale.PriLangID := LANG_UKRAINIAN;
- //SysLocale.PriLangID := LANG_RUSSIAN;
- IdMessage1.CharSet := 'UTF-8'; //Windows-1251
- IdMessage1.ContentTransferEncoding := '8bit';
- idsmtp1.Host:='smtp.mail.ru';
- idsmtp1.MailAgent:='Mozilla'; // имя агента
- idsmtp1.Port:=port; // Port:=2525; отправлено и 587 то же 465 - не хочет и 25 не хочет
- idsmtp1.Username:=login;
- idsmtp1.Password:=pass;
- idmessage1.Body.Add(memo1.text) ;// текст письма
- if edit4.Text<>'Имя вложенного файла' then TIdAttachmentFile.Create(IdMessage1.MessageParts, pchar(edit4.Text));// аттач файл, который нужно отправить
- idmessage1.Subject:=AnsiString(edit3.Text);// тема письма
- idmessage1.From.Text:=login;// пишет от кого
- idmessage1.Recipients.EMailAddresses:=Femail;// кому
- idmessage1.IsEncoded:=true;
- {это необходимо использовать для SSL для гугл и маил.ру}
- IdSSLIOHandlerSocketOpenSSL1 := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
- IdSSLIOHandlerSocketOpenSSL1.Destination := IdSMTP1.Host+':'+IntToStr(IdSMTP1.Port);
- IdSSLIOHandlerSocketOpenSSL1.Host := IdSMTP1.Host;
- IdSSLIOHandlerSocketOpenSSL1.Port := IdSMTP1.Port;
- IdSSLIOHandlerSocketOpenSSL1.DefaultPort := 0;
- IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvTLSv1;
- IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Mode := sslmUnassigned;
- IdSMTP1.IOHandler := IdSSLIOHandlerSocketOpenSSL1;
- IdSMTP1.UseTLS := utUseExplicitTLS;
- try
- try
- idSMTP1.connect; // соединяемся
- idSMTP1.Send(idmessage1);// отправляем
- memo2.Lines.Add('Отправлено!');
- Except on E:Exception do
- begin
- memo2.Lines.Add('Не отправлено!!!');
- end;
- end;
- finally
- if idsmtp1.Connected then idsmtp1.Disconnect; // разъединяем
- idsmtp1.Free;
- idmessage1.Free;
- IdSSLIOHandlerSocketOpenSSL1.Free;
- Memo2.Lines.Add('Двойной клик - скрыть');
- button2.Enabled:=true;
- button1.Enabled:=true;
- end;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement