亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mailrcv1.cpp

?? 包含常用Internet協議TCP,UDP、HTTP、FTP、Telnet等
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
void __fastcall TPOP3ExcercizerForm::Pop3ClientMessageLine(TObject *Sender)
{
    DisplayMemo->Lines->Add(((TPop3Cli *)Sender)->LastResponse);
}
//---------------------------------------------------------------------------
// This event handler is called when TPop3Client is about to receive a
// list line. The MsgNum property gives the message number.
void __fastcall TPOP3ExcercizerForm::Pop3ClientListBegin(TObject *Sender)
{
    DisplayMemo->Lines->Add("*** List begin ***");
}
//---------------------------------------------------------------------------
// This event handler is called when TPop3Client has received the last list
// line.
void __fastcall TPOP3ExcercizerForm::Pop3ClientListEnd(TObject *Sender)
{
    DisplayMemo->Lines->Add("*** List End ***");
}
//---------------------------------------------------------------------------
// This event handler is called for each list line received by TPop3Client.
void __fastcall TPOP3ExcercizerForm::Pop3ClientListLine(TObject *Sender)
{
    AnsiString Buffer;

    Buffer = "MsgNum = " + IntToStr(((TPop3Cli *)Sender)->MsgNum) + " " +
             "MsgSize = " + IntToStr(((TPop3Cli *)Sender)->MsgSize) + " " +
             "Line = """ + ((TPop3Cli *)Sender)->LastResponse + """";
    if (DisplayMemo->Lines->Count > 200)
         DisplayMemo->Clear();
    DisplayMemo->Lines->Add(Buffer);
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::Pop3ClientUidlBegin(TObject *Sender)
{
    DisplayMemo->Lines->Add("*** Uidl begin ***");
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::Pop3ClientUidlEnd(TObject *Sender)
{
    DisplayMemo->Lines->Add("*** Uidl end ***");
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::Pop3ClientUidlLine(TObject *Sender)
{
    AnsiString Buffer;

    Buffer = "MsgNum = "  + IntToStr(((TPop3Cli *)Sender)->MsgNum) + " " +
             "MsgUidl = " + ((TPop3Cli *)Sender)->MsgUidl + """";
    if (DisplayMemo->Lines->Count > 200)
         DisplayMemo->Clear();
    DisplayMemo->Lines->Add(Buffer);
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::MessageBegin(TObject *Sender)
{
    MessageForm->Caption = "Message " +
                           IntToStr(((TPop3Cli *)Sender)->MsgNum);
    MessageForm->Show();
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::MessageLine(TObject *Sender)
{
    if (MessageForm->DisplayMemo->Lines->Count > 200)
         MessageForm->DisplayMemo->Clear();
    MessageForm->DisplayMemo->Lines->Add(((TPop3Cli *)Sender)->LastResponse);
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::NextButtonClick(TObject *Sender)
{
    MessageForm->DisplayMemo->Clear();
    MessageForm->Caption       = "Message";
    Pop3Client->OnMessageBegin = MessageBegin;
    Pop3Client->OnMessageEnd   = NULL;
    Pop3Client->OnMessageLine  = MessageLine;
    Pop3Client->OnRequestDone  = NextMessageRequestDone;
    Pop3Client->MsgNum         = StrToInt(MsgNumEdit->Text);
    Pop3Client->Retr();
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::NextMessageRequestDone(
    TObject      *Sender,
    TPop3Request RqType,
    WORD         Error)
{
    if (Error != 0)
        return;

    MsgNumEdit->Text = IntToStr(StrToInt(MsgNumEdit->Text) + 1);
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::GetAllMessageLine(TObject *Sender)
{
    fprintf(FFile, "%s\n", ((TPop3Cli *)Sender)->LastResponse.c_str());
}
//---------------------------------------------------------------------------
// The function here after will start an event chain that will eventually
// download all messages for the POP3 server. We cannot simply loop because
// the POP3 compomnet is asynchronous: it will not wait for operation done
// before returning. We must "chain" operations one after the other using
// the OnRequestDone event handler. We use the variable FGetAllState to keep
// track of where we are.
// To get all messages, we must first call Stat to know how many messages
// are on the server, then for each message we call Uidl to get a unique
// identifier for each message to build a file name and know if we already
// have a message, then we retrieve the message, then we increment the
// message number and continue until the number of messages is reached.
// We should start a TTimer to handle timeout...
void __fastcall TPOP3ExcercizerForm::GetAllButtonClick(TObject *Sender)
{
    TIniFile *IniFile;

    // Get path from INI file
    IniFile  = new TIniFile(IniFileName);
    FMsgPath = IniFile->ReadString("Data", "MsgPath",
                                   ExtractFilePath(Application->ExeName));
    delete IniFile;

    // Be sure to have an ending backslash
    if ((FMsgPath.Length() > 0) && (FMsgPath[FMsgPath.Length()] != '\\'))
        FMsgPath = FMsgPath + "\\";

    FGetAllState = 0;
    FFileOpened  = FALSE;
    Pop3Client->OnRequestDone  = GetAllRequestDone;
    Pop3Client->OnMessageBegin = NULL;
    Pop3Client->OnMessageEnd   = NULL;
    Pop3Client->OnMessageLine  = GetAllMessageLine;
    Pop3Client->Stat();
}
//---------------------------------------------------------------------------
// This event handler is called when a request related to GetAll is done.
// We check for errors and our state variable FGetAllState which tells us
// where we are (stat, uidl or retr which are the 4 commands we use.
// Note that we also could use Dele to remove the messages from the server.
void __fastcall TPOP3ExcercizerForm::GetAllRequestDone(
    TObject      *Sender,
    TPop3Request RqType,
    WORD         Error)
{
    if (Error) {
        if (FFileOpened) {
            FFileOpened = FALSE;
            fclose(FFile);
        }
        DisplayMemo->Lines->Add("Error " + Pop3Client->ErrorMessage);
        return;
    }

    try {
        switch (FGetAllState) {
        case 0: // Comes from the Stat command
            if (Pop3Client->MsgCount < 1) {
                DisplayMemo->Lines->Add("No message to download->");
                return;
            }
            Pop3Client->MsgNum = 1;    // Start with first message
            FGetAllState = 1;
            Pop3Client->Uidl();
            break;
        case 1: // Comes from the Uidl command
            FFileName = FMsgPath + "Msg " + Pop3Client->MsgUidl + "->txt";
            if (FileExists(FFileName)) {
                DisplayMemo->Lines->Add("Message " + IntToStr(Pop3Client->MsgNum) + " already here");
                if (Pop3Client->MsgNum == Pop3Client->MsgCount) {
                    DisplayMemo->Lines->Add("Finished");
                    return;
                }
                Pop3Client->MsgNum = Pop3Client->MsgNum + 1;
                FGetAllState = 1;
                Pop3Client->Uidl();
            }
            else {
                DisplayMemo->Lines->Add("Message " + IntToStr(Pop3Client->MsgNum));
                FFile        = fopen(FFileName.c_str(), "w");
                if (FFile == NULL)
                    throw Exception("Can't open file " + FFileName);
                FFileOpened  = TRUE;
                FGetAllState = 2;
                Pop3Client->Retr();
            }
            break;
        case 2: // Comes from the Retr command
            FFileOpened = FALSE;
            fclose(FFile);
            if (Pop3Client->MsgNum == Pop3Client->MsgCount) {
                DisplayMemo->Lines->Add("Finished");
                return;
            }
            Pop3Client->MsgNum = Pop3Client->MsgNum + 1;
            FGetAllState = 1;
            Pop3Client->Uidl();
            break;
        default:
            DisplayMemo->Lines->Add("Invalid state");
            return;
        }
    } catch (Exception &E) {
        if (FFileOpened) {
            FFileOpened = FALSE;
            fclose(FFile);
        }
        DisplayMemo->Lines->Add("Error: " + E.Message);
    }
}
//---------------------------------------------------------------------------
void __fastcall TPOP3ExcercizerForm::Pop3ClientRequestDone(
    TObject      *Sender,
    TPop3Request RqType,
    WORD         Error)
{
    DisplayMemo->Lines->Add("Request Done Rq==" + IntToStr(Integer(RqType)) +
                            " Error==" + IntToStr(Error));

    if (RqType == pop3Stat) {
        InfoLabel->Caption = "Stat ok, " +
                             IntToStr(Pop3Client->MsgCount) + " messages " +
                             IntToStr(Pop3Client->MsgSize) + " bytes";
    }
    else if (RqType == pop3List) {
        InfoLabel->Caption = "List ok, " +
                             IntToStr(Pop3Client->MsgNum)  + " message " +
                             IntToStr(Pop3Client->MsgSize) + " bytes";
    }
    else if (RqType == pop3Last) {
        InfoLabel->Caption = "Last == " + IntToStr(Pop3Client->MsgNum);
    }
}
//---------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产主播一区二区| 麻豆成人免费电影| 欧美韩国日本不卡| 欧美精品一区二区三区久久久| 欧美人伦禁忌dvd放荡欲情| 一本到不卡免费一区二区| 成人精品视频一区二区三区 | 99re这里只有精品6| 国产成人精品午夜视频免费| 国产成人自拍高清视频在线免费播放| 美女性感视频久久| 国内精品在线播放| 丁香五精品蜜臀久久久久99网站| 国产美女一区二区三区| 国产99久久久国产精品免费看| 国产精品99久久久久久似苏梦涵 | 成人aaaa免费全部观看| 丁香五精品蜜臀久久久久99网站| 99久久久国产精品| 欧美午夜片在线看| 日韩欧美色电影| 久久久久久久久久久久久久久99| 亚洲国产精品激情在线观看 | 欧美日韩一区三区四区| 欧美一区二区三区在| 久久久不卡影院| 中文字幕在线不卡国产视频| 亚洲一二三专区| 蜜桃久久久久久| 成人国产精品免费网站| 欧美日韩中文一区| 久久精品在线观看| 亚洲一线二线三线视频| 韩国毛片一区二区三区| 91视频一区二区三区| 91麻豆精品国产91久久久久久久久 | 91丨九色丨国产丨porny| 欧美中文字幕一区二区三区亚洲| 欧美一区二区视频在线观看| 国产婷婷色一区二区三区四区| 国产精品久久久久国产精品日日 | 日日摸夜夜添夜夜添国产精品| 蜜臀av性久久久久蜜臀av麻豆| 大陆成人av片| 777亚洲妇女| 亚洲欧洲成人自拍| 精品一区二区三区在线播放| 91免费视频观看| 欧美电视剧免费观看| 亚洲精品乱码久久久久久久久| 美国三级日本三级久久99| 99久久精品国产观看| 亚洲精品一区二区在线观看| 亚洲一区二区三区国产| 国产传媒欧美日韩成人| 日韩一卡二卡三卡四卡| 一区二区三区免费| 成人激情校园春色| 久久久久久亚洲综合影院红桃 | 九九久久精品视频| 欧美日韩美少妇| 18欧美乱大交hd1984| 国产成人啪午夜精品网站男同| 日韩一级免费观看| 亚洲精品你懂的| 91美女片黄在线观看| 亚洲国产精品精华液ab| 国产电影一区在线| 欧美国产在线观看| 成人久久久精品乱码一区二区三区| 日韩免费看网站| 美女视频一区二区三区| 精品视频在线看| 亚洲图片欧美一区| 欧美日韩国产片| 视频一区二区三区入口| 欧美精品免费视频| 日本免费在线视频不卡一不卡二| 欧美日韩激情在线| 午夜免费久久看| 337p亚洲精品色噜噜狠狠| 视频在线观看一区| 欧美一区二区三区视频免费播放| 午夜精品影院在线观看| 欧美日韩国产高清一区二区| 午夜免费欧美电影| 日韩一区二区精品| 国产乱国产乱300精品| 国产午夜精品一区二区三区视频 | 亚洲欧美激情视频在线观看一区二区三区| www.欧美日韩| 一区二区三区中文字幕| 国内精品国产成人国产三级粉色| 日本欧美大码aⅴ在线播放| 成人一二三区视频| 色欧美乱欧美15图片| 亚洲少妇中出一区| av不卡一区二区三区| 一区二区三区色| 911国产精品| 国产在线视频精品一区| 中文字幕电影一区| 一本一本大道香蕉久在线精品| 亚洲午夜精品一区二区三区他趣| 欧美亚洲国产一区在线观看网站| 一区二区三区在线视频观看58 | 国产欧美va欧美不卡在线| 欧美福利视频一区| 久国产精品韩国三级视频| 久久精品亚洲精品国产欧美kt∨| 国产一区二区三区电影在线观看| 久久综合九色综合97婷婷女人| 成人一级视频在线观看| 亚洲乱码精品一二三四区日韩在线| 欧美亚洲另类激情小说| 日韩激情视频在线观看| 国产丝袜在线精品| 欧美色精品在线视频| 国产一区二区三区四| 国产精品天美传媒| 欧美一区二区三区日韩视频| 国产精品综合在线视频| 国产精品盗摄一区二区三区| 在线精品观看国产| 日本成人在线一区| 国产精品二区一区二区aⅴ污介绍| 在线观看成人小视频| 免费在线观看日韩欧美| 中文字幕国产精品一区二区| 欧美疯狂做受xxxx富婆| 国产不卡一区视频| 日韩高清一区二区| 亚洲特黄一级片| 日韩欧美专区在线| 中文字幕国产一区| 欧美一区二区福利在线| 成人动漫一区二区三区| 视频一区免费在线观看| 国产欧美日韩久久| 欧美精品久久99久久在免费线| 国产91丝袜在线观看| 久久成人免费日本黄色| 亚洲成人精品一区二区| 久久丝袜美腿综合| 欧美一级日韩一级| 欧美日韩在线播放三区四区| 成人视屏免费看| 久久99日本精品| 一区二区三区资源| 国产精品激情偷乱一区二区∴| 777奇米成人网| 波多野结衣欧美| 精品中文av资源站在线观看| 亚洲欧美一区二区三区国产精品| 久久综合九色综合久久久精品综合| 欧洲av在线精品| 国产成人午夜高潮毛片| 韩国理伦片一区二区三区在线播放| 夜色激情一区二区| 1区2区3区国产精品| 久久久久九九视频| 精品久久免费看| 91精品国产全国免费观看| 欧美午夜影院一区| 91精品福利在线| 91网站在线播放| 91在线观看污| 色偷偷88欧美精品久久久| 99精品视频一区二区三区| 成人免费毛片片v| 99视频在线精品| 99视频精品全部免费在线| 国产酒店精品激情| 国产精品1区2区3区| 福利91精品一区二区三区| 国产一区二区三区蝌蚪| 成av人片一区二区| 色国产精品一区在线观看| 在线成人av网站| 久久久不卡网国产精品二区| 亚洲欧美区自拍先锋| 日韩影院免费视频| 国产成人福利片| 91视频免费观看| 日韩欧美电影一区| 国产精品久久久久久一区二区三区 | 国产美女精品在线| 91免费版pro下载短视频| 欧美日韩mp4| 中文字幕免费一区| 婷婷六月综合亚洲| 大美女一区二区三区| 欧美日韩中字一区| 亚瑟在线精品视频| 国产美女娇喘av呻吟久久| 欧美亚日韩国产aⅴ精品中极品| 日韩一区和二区| 亚洲男帅同性gay1069| 久久成人综合网| 亚洲图片另类小说|