Отправка почты через TNMSMTP {Delphi 5}

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by D1mOn, 24 Feb 2006.

  1. D1mOn

    D1mOn Elder - Старейшина

    Joined:
    2 Oct 2005
    Messages:
    380
    Likes Received:
    144
    Reputations:
    29
    Здравствуйте. Я немогу отправить письмо через компонент TSMTP с закладки интеренет. Я вот такой пробовал исходник:
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    NMSMTP1.Host := 'smtp.mail.ru';
    NMSMTP1.Connect;
    with NMSMTP1.PostMessage do
    begin
    FromAddress := '[email protected]';
    ToAddress.Add('[email protected]') ;
    Subject := 'Test';
    Body.Add('This is a test');
    NMSMTP1.SendMail;
    NMSMTP1.Disconnect;
    end;
    end;
    Всё компилится без проблем, но когда нажимеш кнопу, то по итечению некоторого времени вылетает:
    Project Project1.exe. raised exception class ESocketError with message 'Connection Failed'. Proces stopped. Use step or Run to continue.
    А потом "Conn ection Failed."
    Незнаю почему так??? Может в Host надо писать www.mail.ru Подскажите, или напишите код с помошью которого вы отправляете. Подскажите пожалуйсто!!!
    -------------------------------------------------------
    Заранее благодарен!
     
  2. gadjet

    gadjet Elder - Старейшина

    Joined:
    17 Dec 2005
    Messages:
    58
    Likes Received:
    18
    Reputations:
    2
    Я исрользовал компоненты TIdSMTP и TIdMessage (вкладки Indy Clients и Indy Misc). Код выглядит так:

    procedure SendMail;
    var
    LSMTP: TIdSMTP;
    LMsg: TIdMessage;
    x: TIdAttachment; //Это аттач письма, можешь удалить, если не надо
    //Обьявлям переменные.
    begin //Ну начинаем :)
    LSMTP := TIdSMTP.Create(nil); //Создаемся
    LMsg := TIdMessage.Create(LSMTP);
    with LMsg do
    begin
    Subject := 'Тема'; // Здесь вводим тему
    Recipients.EMailAddresses := '[email protected]' ; // куда будет послано письмо...

    From.Text := '[email protected]'; //От кудыкина будет письмо
    Body.Add('Текст письма');

    x:=TIdAttachment.Create(LMsg.MessageParts,'Путь к файлу аттача'); //не нужен аттач - стирай всю строку




    end;
    with LSMTP do
    begin
    AuthenticationType:=atNone;
    Host := 'smtp.mail.ru';
    Port := 25;
    Username :='[email protected]' ; //здесь происходит авторизация(как в почтовом клиенте)
    Password :='loxi' ;
    try
    Connect; //зухель коннект!!
    Send(LMsg);
    except
    end;
    end;
    FreeAndNil(LMsg);
    FreeAndNil(LSMTP);

    end;
     
    #2 gadjet, 24 Feb 2006
    Last edited: 24 Feb 2006
  3. SanyaX

    SanyaX .::Club Life::.

    Joined:
    28 Jan 2005
    Messages:
    936
    Likes Received:
    396
    Reputations:
    261
    Помойму прога была litlelamer'a там где можно пробывать XSS. Там можно и просто письма отправлять поищи на ачате в поиске.
     
  4. D1mOn

    D1mOn Elder - Старейшина

    Joined:
    2 Oct 2005
    Messages:
    380
    Likes Received:
    144
    Reputations:
    29
    оки пасиб всем)
     
  5. donetsk

    donetsk Elder - Старейшина

    Joined:
    30 Jan 2006
    Messages:
    158
    Likes Received:
    14
    Reputations:
    2
    gadjet подскажи что не правильно?
    Как нужно настроить эти 2 компонента?
    Почта вроде бы пытается отпвиться, но ругается или на ESocketError, или на авторизацию :(
    Наверное нужно как-то ещё компоненты настраивать?

    Вот исходник, только впищити в него свои адреса, я вписывал и проверял всё на mail.ru , но без результатно :(

    _www.perspektiva.h16.ru/email.rar
    помоги плиз не могу разобраться :(