Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.19;
Скачать: CL | DM;

Вниз

Динамическое назначение event у компоненты NMPop3 (из FastNet)   Найти похожие ветки 

 
tasman ©   (2003-06-06 06:51) [0]

Доброго времени суток!
Люди, помогите! У меня проблема с динамическим назначением процедуры у компонента NMPop3(из FastNet"а). Если пишу

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, NMPop3;

type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }

procedure NMConnect(Sender: TObject);
procedure GetMail(hst,usrid,psw:string);stdcall;
procedure NMFailure(Sender: TObject);
procedure CFailed(Sender: TObject);

end;

var
Form1: TForm1;

NMPop3_:TNMPop3;

implementation

{$R *.DFM}

procedure TForm1.NMConnect(Sender: TObject);
begin
showmessage("OnConnect - Connect!");
end;

procedure TForm1.NMFailure(Sender: TObject);
begin
showmessage("OnFailure - error!");
end;

procedure TForm1.CFailed(Sender: TObject);
begin
showmessage("Conect failed!");
end;

procedure TForm1.GetMail(hst,usrid,psw:string);stdcall;
begin
try
NMPop3_:=TNMPOP3.Create(self);
showmessage("Create - OK");

NMPop3_.AttachFilePath:=".";
NMPop3_.OnConnect:=NMConnect;

NMPop3_.OnFailure:=NMFailure;

NMPop3_.OnConnectionFailed:=CFailed;

NMPOP3_.DeleteOnRead := TRUE;
NMPOP3_.ReportLevel := 2{Status_Basic};
NMPOP3_.TimeOut := 20000;
NMPOP3_.Host := hst;
NMPOP3_.Port := 13;
NMPOP3_.UserID := usrid;
NMPOP3_.Password := psw;
showmessage("Set parametrs - OK");

NMPOP3_.Connect;
showmessage("Connect - OK");

finally
NMPop3_.Destroy;
showmessage("Destroy!");
end;
end;

end.


то все нормально. Но только стоит уйти от TForm, как тут же начинаются проблемы! :(

program Project1;

uses
SysUtils,
Classes,
NMpop3,
dialogs;

var
NMPop3_:TNMPOP3;

{$R *.RES}

procedure NMConnect(Sender: TObject);
begin
showmessage("OnConnect - Connect!");
end;

procedure GetMail(hst,usrid,psw:string);stdcall;
begin
try
NMPop3_:=TNMPOP3.Create(nil);
showmessage("Create - OK");

NMPop3_.AttachFilePath:="";
NMPop3_.OnConnect:=NMConnect; //Выдает ошибку:Incompatible types: method pointer and regular procedure

NMPOP3_.DeleteOnRead := TRUE;
NMPOP3_.ReportLevel := 2{Status_Basic};
NMPOP3_.TimeOut := 20000;
NMPOP3_.Host := hst;
NMPOP3_.Port := 13;
NMPOP3_.UserID := usrid;
NMPOP3_.Password := psw;
showmessage("Set parametrs - OK");

NMPOP3_.Connect;
showmessage("Connect - OK");

finally
NMPop3_.Destroy;
showmessage("Destroy!");
end;
end;

begin
GetMail("ukrpost.net","tasman","qwerty");
end.


Понимаю, что вопрос ламерский, но все же помогите, плиз, а то мочи нет.


 
Song ©   (2003-06-06 08:14) [1]

Процедура GetMail() не является процедурой класса, поэтому она не видит NMConnetct без явного указания объекта класса.


 
tasman ©   (2003-06-07 07:42) [2]

2Song

Спасибо, я уже понял :)



Страницы: 1 вся ветка

Текущий архив: 2003.06.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-60126
Лана Розанова
2003-06-06 14:12
2003.06.19
Запуск файла


3-60071
Rel_
2003-05-28 09:27
2003.06.19
isnert into table


14-60413
MicroWorld
2003-06-03 15:00
2003.06.19
interbase


1-60151
volodya_
2003-06-06 14:04
2003.06.19
Приведение типов


1-60165
tasman
2003-06-06 06:51
2003.06.19
Динамическое назначение event у компоненты NMPop3 (из FastNet)