![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
POP3 + ActiveX [D7, Win2k]
integery © (2005-06-12 22:17:00)Хочу написать себе ActiveX для прийома пошти но немогу понять почему FMsg.MessageParts.Count всегда равно 0 , хотя там есть attachment вот кусочек кода:
unit pop;
{$WARN SYMBOL_PLATFORM OFF}
interface
uses
ComObj, ActiveX, Mycom_TLB,Dialogs,IdMessage, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdMessageClient, IdPOP3;
type
TMPOP = class(TAutoObject, IMPOP)
FMsg: TIdMessage;
FPOP:TIdPOP3;
protected
function Get_ChekMail(MHost, MPort, MUser, MPass: OleVariant): OleVariant;
safecall;
function Get_GetMailBoxSize: OleVariant; safecall;
function Get_MsgAttachCount: OleVariant; safecall;
function Get_MsgDate: OleVariant; safecall;
function Get_MsgFrom: OleVariant; safecall;
function Get_MsgOrganization: OleVariant; safecall;
function Get_MsgPrioriti: OleVariant; safecall;
function Get_MsgSubj: OleVariant; safecall;
function Get_GetMsgNum(Num: OleVariant): OleVariant; safecall;
end;
implementation
uses ComServ, Classes;
{ TMPop }
function TMPOP.Get_ChekMail(MHost, MPort, MUser,
MPass: OleVariant): OleVariant;
begin
FPop:=TIdPOP3.Create(nil);
FMsg:=TIdMessage.Create(nil);
try
FMsg.ContentType:='text/plain';
FPOP.RecvBufferSize:=1024;
with FPOP do
begin
if Connected then Disconnect;
Host:=MHost;
Port:=MPort;
Username:=MUser; //windows.Beep(1700,200);
Password:=MPass;
Connect(20000);
if Connected then Result:=CheckMessages else Result:= -1;
end;
except
Result:=-2;
end;
end;
function TMPOP.Get_GetMsgNum(Num: OleVariant): OleVariant;
begin
try
FMsg.Clear;
FPOP.RetrieveHeader(Num,FMsg);
except
Result:=-1;
end;
end;
function TMPOP.Get_MsgAttachCount: OleVariant;
begin
try
Result:=FMsg.MessageParts.Count;
except
Result:=-1;
end;
end;
немогу понять ясли в через консольноє приложениє то работаєт а через ActiveX не хочет , в чом граблии???
integery (2005-06-13 09:54:00) [1]ой блин всьо работаєт верно говорят утра вечера модринее
в место FPOP.Retrieve(Num,FMsg) у меня FPOP.RetrieveHeader(Num,FMsg)
integery (2005-06-13 09:50:00) [2]народ подскажите в чом пращот ????