|
Вопрос # 4 927/ вопрос открыт / |
|
Приветствую, уважаемые эксперты!
Нужен рабочий пример отправки и забирания почты с gmail.com
причем по https
пробовал стандартные indy - они или с ssl не могут работать или еще что - не хотит вообщем, библиотеки подкладывал, не помогало
может я чего-то не то делал..
возможно кто-то уже работал над этим и не жалко поделиться исходником
спасибо
 |
Вопрос задал: mirt.steelwater (статус: Посетитель)
Вопрос отправлен: 17 января 2011, 16:23
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 5; последнее сообщение — 17 января 2011, 16:57; участников в обсуждении: 2.
|
mirt.steelwater (статус: Посетитель), 17 января 2011, 16:25 [#1]:
procedure TForm1.Button1Click(Sender: TObject);
begin
f_MSG := NIL;
f_MSG := TIdMessage.Create;
if ( not Assigned (f_MSG) ) then
raise Exception.Create ('Ошибка создания структуры сообщения!');
with f_MSG do
begin
From.Address := 'mirt.steelwater@gmail.com';
Recipients.EMailAddresses := 'mirt.steelwater@gmail.com';
Subject := UTF8Encode ('test');
Date := now;
end;
{ создание SMTP-клиента }
f_SMTP := NIL;
f_SMTP := TIdSMTP.Create (NIL);
if ( not Assigned (f_SMTP) ) then
raise Exception.Create ('Ошибка создания SMTP-клиента!');
with f_SMTP do
begin
Host := 'smtp.gmail.com';
Port := 443;{443, 495, 587, 25}
UserName := 'mirt.steelwater';
Password := '********';
AuthType := atDefault;
end;
{ создание SSL-сессии }
f_SSL := NIL;
f_SSL := TIdSSLIOHandlerSocketOpenSSL.Create (NIL);
if ( not Assigned (f_SSL) ) then
raise Exception.Create ('Ошибка создания SSL-сессии!');
with f_SSL do
begin
Host := f_SMTP.Host;
Port := f_SMTP.Port;
Destination := Format ('%s:%d',[Host,Port]);
DefaultPort := 0;
SSLOptions.Method := sslvTLSv1;
SSLOptions.Mode := sslmUnassigned;
end;
{ подключение поддержки SSL к SMTP-клиенту }
with f_SMTP do
begin
IOHandler := f_SSL;
UseTLS := utUseExplicitTLS;
end;
f_MSG.Body.Add ('test message '+DateTimeToStr (now));
f_SMTP.Connect();
f_SMTP.Send(f_MSG);
Application.ProcessMessages;
f_SMTP.Disconnect;
FreeAndNil (f_SSL);
FreeAndNil (f_SMTP);
FreeAndNil (f_MSG);
end;
Ⓐ свобода сопротивление солидарность
|
|
mirt.steelwater (статус: Посетитель), 17 января 2011, 16:31 [#2]:
procedure TForm1.Button3Click(Sender: TObject);
var
f_POP3: TIdPOP3;
f_SSL: TIdSSLIOHandlerSocketOpenSSL;
begin
{ создание POP3-клиента }
f_POP3 := NIL;
f_POP3 := TIdPOP3.Create (NIL);
if ( not Assigned (f_POP3) ) then
raise Exception.Create ('Ошибка создания POP3-клиента!');
with f_POP3 do
begin
Host := 'pop.gmail.com';
Port := 110;{443, 495, 587, 110}
UserName := 'mirt.steelwater';
Password := '********';
AuthType := atAPOP;
end;
{ создание SSL-сессии }
f_SSL := NIL;
f_SSL := TIdSSLIOHandlerSocketOpenSSL.Create (NIL);
if ( not Assigned (f_SSL) ) then
raise Exception.Create ('Ошибка создания SSL-сессии!');
with f_SSL do
begin
Host := f_POP3.Host;
Port := f_POP3.Port;
Destination := Format ('%s:%d',[Host,Port]);
DefaultPort := 0;
SSLOptions.Method := sslvTLSv1;
SSLOptions.Mode := sslmUnassigned;
end;
{ подключение поддержки SSL к POP3-клиенту }
with f_POP3 do
begin
IOHandler := f_SSL;
UseTLS := utUseExplicitTLS;
end;
f_POP3.Connect;
if f_POP3.Connected then
f_POP3.CheckMessages;
//...
FreeAndNil (f_SSL);
FreeAndNil (f_POP3);
end;
оба куска не работали(
пробовал все порты, что закоментированны
Ⓐ свобода сопротивление солидарность
|
|
min@y™ (статус: Доктор наук), 17 января 2011, 16:38 [#3]:
https - это ж через web-интерфейс? Или я чего-то не понимаю?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
mirt.steelwater (статус: Посетитель), 17 января 2011, 16:43 [#4]:
я ошибся, каюсь
это не https
это просто smtp & pop3 + ssl
это я по привычке написал..
Ⓐ свобода сопротивление солидарность
|
|
min@y™ (статус: Доктор наук), 17 января 2011, 16:57 [#5]:
Цитата (mirt.steelwater):
я ошибся, каюсь это не https это просто smtp & pop3 + ssl это я по привычке написал..
Вот тебе БОЛЬШАЯ ССЫЛКА. Ковыряй дальше сам.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|