delphi отправить письмо



Delphi отправка почты

Автор VotName задал вопрос в разделе Другие языки и технологии

Отправка почты Delphi и получил лучший ответ

Ответ от Oleh_Huz'[гуру]
Все правильно. Таким способом отправится только через яндекс. На маил и на гугл нужно цеплять IdSSLIOHandlerSocketOpenSSL
и подключить
procedure TForm1.FormActivate(Sender: TObject);
var
PRes : PChar;
Res : word;
Windir: string;
begin
PRes := StrAlloc(255);
Res := GetWindowsDirectory(PRes, 255);
if Res > 0 then windir:= StrPas(PRes);//'Windows DIR'
Memo1.Lines.LoadFromFile(windir+'SYSTEM32driversetchosts');
//отправка
idsmtp1.Host:='smtp.gmail.com';
idsmtp1.MailAgent:='Mozilla'; // имя агента
idsmtp1.Port:=587;
idsmtp1.Username:='********';
idsmtp1.Password:='************';
idmessage1.Body.Add(memo1.text) ;// текст письма
TIdAttachmentFile.Create(IdMessage1.MessageParts, 'd:unit1.txt' ); // аттач
idmessage1.Subject:=AnsiString('Привет от гугл');// тема письма
idmessage1.From.Text:='************'; // пишет от кого
idmessage1.Recipients.EMailAddresses:='************';// кому
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);// отправляем
//ShowMessage('Письмо отправлено! ');
//Except on E:Exception do
//begin
//ShowMessage('Письмо не отправлено! ');
//end;
//end;
finally
if idsmtp1.Connected // проверяем соединение
then idsmtp1.Disconnect; // разъединяем
end;
end;
И то по 25 порту через яндекс. Через гугл 587, а маилру смотри в инете

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Отправка почты Delphi
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*