604
社区成员




void __fastcall TForm3::Button1Click(TObject *Sender)
{
NMPOP31->AttachFilePath="Attachment\\";
NMPOP31->Host=Form2->Edit4->Text;
NMPOP31->Port=Form2->Edit5->Text.ToInt();
NMPOP31->ReportLevel=Status_Basic;
NMPOP31->TimeOut=60000;
NMPOP31->UserID=Form2->Edit6->Text;
NMPOP31->Password=Form2->Edit7->Text;
if(!NMPOP31->Connected)
NMPOP31->Connect();
Form3->Edit1->Text=IntToStr(NMPOP31->MailCount);
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button2Click(TObject *Sender)
{
if(NMPOP31->Connected)
NMPOP31->List();
else
ShowMessage("必须先链接到服务器!");
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31List(int Msg, int Size)
{
if(Msg<1)
{
Memo1->Clear();
Memo1->Lines->Add("邮件序号/邮件大小(字节)");
}
else
{
Memo1->Lines->Add(IntToStr(Msg)+"/"+IntToStr(Size));
}
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31RetrieveEnd(TObject *Sender)
{
Form3->Cursor=crDefault;
StatusBar1->SimpleText="邮件收取完毕!";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31Connect(TObject *Sender)
{
StatusBar1->SimpleText="已经连接到服务器";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31ConnectionFailed(TObject *Sender)
{
StatusBar1->SimpleText="连接服务器失败";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31Disconnect(TObject *Sender)
{
StatusBar1->SimpleText="脱机工作";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31Failure(TObject *Sender)
{
ShowMessage("操作失败");
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31HostResolved(TComponent *Sender)
{
StatusBar1->SimpleText="服务器地址解析成功";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31InvalidHost(bool &Handled)
{
ShowMessage("无效的服务器名");
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31PacketRecvd(TObject *Sender)
{
StatusBar1->SimpleText="已接受"+IntToStr(NMPOP31->BytesRecvd)+"字节/共"+IntToStr(NMPOP31->BytesTotal)+"字节";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31Reset(TObject *Sender)
{
ShowMessage("重置删除标志");
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31RetrieveStart(TObject *Sender)
{
Form3->Cursor=crHourGlass;
StatusBar1->SimpleText="开始接受邮件";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31Status(TComponent *Sender,
AnsiString Status)
{
StatusBar1->SimpleText=Status;
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31Success(TObject *Sender)
{
StatusBar1->SimpleText="操作成功";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31AuthenticationFailed(bool &Handled)
{
ShowMessage("密码错误!");
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button3Click(TObject *Sender)
{
if(NMPOP31->Connected)
{
NMPOP31->GetMailMessage(Edit4->Text.ToInt());
Edit2->Text=NMPOP31->MailMessage->From;
AnsiString subject=Decode(NMPOP31->MailMessage->Subject,3);
Edit5->Text=subject;
// Edit5->Text=NMPOP31->MailMessage->Subject;
Edit3->Text=AnsiString(NMPOP31->Summary->Bytes);
Edit6->Text=NMPOP31->MailMessage->MessageId;
Memo2->Clear();
Memo3->Clear();
Memo2->Lines->Assign(NMPOP31->MailMessage->Head);
AnsiString body=Decode(NMPOP31->MailMessage->Body->Text,3);
Memo3->Lines->Add(body);
if(NMPOP31->MailMessage->Attachments->Text!="")
ShowMessage("附件\n"+NMPOP31->MailMessage->Attachments->Text);
}
else
{
NMPOP31->Connect();
}
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31DecodeStart(AnsiString &FileName)
{
StatusBar1->SimpleText="开始解码";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::NMPOP31DecodeEnd(TObject *Sender)
{
StatusBar1->SimpleText="解码完成";
}
//---------------------------------------------------------------------------
void __fastcall TForm3::Button4Click(TObject *Sender)
{
NMPOP31->DeleteMailMessage(Edit4->Text.ToInt());
}
//下面还有是自己写的编码解码代码,测试过了,正确,功能是把一段文子编码解码。