Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
3-60018
Vorobyev Sergey
2003-05-27 11:13
2003.06.19
Как подсчитать число записей для ЛЮБОГО запроса ?


14-60337
Nox
2003-06-01 13:35
2003.06.19
Как скомпилировать приложение для Win под Asm с иконкой?


1-60201
GavAl
2003-06-05 10:37
2003.06.19
Excel


3-60031
prihod
2003-05-27 17:28
2003.06.19
??? Как бороться с временными файлами типа


14-60395
LiLa Ananda
2003-06-02 10:21
2003.06.19
Что ведет мужчину?




   Наверх