Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум программистов _ Delphi - Сети _ Помогите отправить письмо на дельфях

Автор: Lunina 19:01:2008, 18:26

Задача простая – залогиниться на серваке и отправить сообщение на мыло. В дельфях мало понимаю, поэтому не стебите особо плиз… вобщем, состряпала по мануалам в borland дельфях 7 следующий код:

Код
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, IdMessage, IdPOP3, IdBaseComponent, IdComponent,
  IdTCPConnection, IdTCPClient, IdMessageClient, IdSMTP, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    SMTP: TIdSMTP;
    IdPOP31: TIdPOP3;
    IdMessage: TIdMessage;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  SMTP.Port:=25;
  SMTP.Username:='vasya@mail.ru';
    SMTP.Host:='mail.pochta.ru';
  SMTP.Password:='123456';
  SMTP.AuthenticationType:=atLogin;
with IdMessage do
     begin
    Body.Assign(Memo1.Lines);
      From.Text := 'vasya@mail.ru';
      Recipients.EMailAddresses := 'masha@mail.ru';
      Subject := 'hello';

      end;


   SMTP.Connect;
   try
  showmessage('îòîñëàíî');
  SMTP.Send(IdMessage);
   finally
      SMTP.Disconnect;
   end;
end;

end.

end;

end.



При нажатии на кнопку ‘послать’ все виснет и вылезает ошибка на строке SMTP.Host:='smtp.mail.ru';

Debugger Exception Notification:
Project Project.exe raised exception class EAccess Violation with message ‘Access violation at address 0046E5EE in module ‘Project.exe’. Read of address 00000000’. Process stopped…


Как с этим бороться? Что я делаю не так? И еще маленький вопрос: как к сообщению приаттачить файл ? например файл с:\1.txt

Автор: sax_ol 19:01:2008, 18:56

TIdAttachment пользуйте чтобы приатачить.
По поводу ошибки: не видно ошибки что вы пишите, да и кода самого не видно ... dry.gif

Русская версия Invision Power Board (http://www.nulled.ws)
© Invision Power Services (http://www.nulled.ws)