Главная страница
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.014 c
14-60408
uncle_Ru
2003-06-03 12:05
2003.06.19
Взлом InterBase


3-60090
Rel_
2003-05-28 14:39
2003.06.19
TQuery


1-60166
Navi
2003-05-31 08:03
2003.06.19
Перемещение курсора по сетке


1-60217
VikOss
2003-06-05 13:46
2003.06.19
Вызов из DLL


3-60029
prihod
2003-05-27 15:52
2003.06.19
??? Как обновлять TDBGrid ???