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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? mimedmo1.pas

?? 包含常用Internet協(xié)議TCP,UDP、HTTP、FTP、Telnet等
?? PAS
字號(hào):
{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Author:       Fran鏾is PIETTE
Object:       This program is a demo for TMimeDecode component.
              TMimeDecode is a component whose job is to decode MIME encoded
              EMail messages (file attach). You can use it for example to
              decode messages received with a POP3 component.
              MIME is described in RFC-1521. headers are described if RFC-822.
Creation:     March 08, 1998
Version:      1.02
EMail:        francois.piette@pophost.eunet.be
              francois.piette@rtfm.be             http://www.rtfm.be/fpiette
Support:      Use the mailing list twsocket@rtfm.be See website for details.
Legal issues: Copyright (C) 1998 by Fran鏾is PIETTE
              Rue de Grady 24, 4053 Embourg, Belgium. Fax: +32-4-365.74.56
              <francois.piette@pophost.eunet.be>

              This software is provided 'as-is', without any express or
              implied warranty.  In no event will the author be held liable
              for any  damages arising from the use of this software.

              Permission is granted to anyone to use this software for any
              purpose, including commercial applications, and to alter it
              and redistribute it freely, subject to the following
              restrictions:

              1. The origin of this software must not be misrepresented,
                 you must not claim that you wrote the original software.
                 If you use this software in a product, an acknowledgment
                 in the product documentation would be appreciated but is
                 not required.

              2. Altered source versions must be plainly marked as such, and
                 must not be misrepresented as being the original software.

              3. This notice may not be removed or altered from any source
                 distribution.
Updates:
Sep 13, 1998  V1.01 Added part and header end numbering
Feb 16/02/99  V1.02 In OnPartLine event handler, assemble line of text for
              display.

 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
unit MimeDmo1;

interface

uses
  WinTypes, WinProcs, Messages, SysUtils, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, IniFiles, MimeDec;

type
  TMimeDecodeForm = class(TForm)
    Panel1: TPanel;
    FileEdit: TEdit;
    DecodeButton: TButton;
    Memo1: TMemo;
    MimeDecode1: TMimeDecode;
    Label1: TLabel;
    ClearButton: TButton;
    procedure DecodeButtonClick(Sender: TObject);
    procedure MimeDecode1PartBegin(Sender: TObject);
    procedure MimeDecode1PartEnd(Sender: TObject);
    procedure MimeDecode1PartHeaderLine(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure ClearButtonClick(Sender: TObject);
    procedure MimeDecode1HeaderLine(Sender: TObject);
    procedure MimeDecode1PartLine(Sender: TObject; Data: PChar;
      DataLen: Integer);
    procedure MimeDecode1HeaderBegin(Sender: TObject);
    procedure MimeDecode1HeaderEnd(Sender: TObject);
    procedure MimeDecode1PartHeaderBegin(Sender: TObject);
    procedure MimeDecode1PartHeaderEnd(Sender: TObject);
  private
    FInitialized   : Boolean;
    FIniFileName   : String;
    FLineBuf       : array [0..255] of char;
    FCharCnt       : Integer;
    procedure Display(Msg: String);
  end;

var
  MimeDecodeForm: TMimeDecodeForm;

implementation

{$R *.DFM}
const
    SectionData   = 'Data';
    SectionWindow = 'Window';
    KeyTop        = 'Top';
    KeyLeft       = 'Left';
    KeyWidth      = 'Width';
    KeyHeight     = 'Height';
    KeyFile       = 'FileName';


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.FormCreate(Sender: TObject);
begin
    FIniFileName := LowerCase(ExtractFileName(Application.ExeName));
    FIniFileName := Copy(FIniFileName, 1, Length(FIniFileName) - 3) + 'ini';
    Memo1.Clear;
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.FormShow(Sender: TObject);
var
    IniFile : TIniFile;
begin
    if not FInitialized then begin
        FInitialized        := TRUE;
        IniFile   := TIniFile.Create(FIniFileName);
        Top       := IniFile.ReadInteger(SectionWindow, KeyTop,    Top);
        Left      := IniFile.ReadInteger(SectionWindow, KeyLeft,   Left);
        Width     := IniFile.ReadInteger(SectionWindow, KeyWidth,  Width);
        Height    := IniFile.ReadInteger(SectionWindow, KeyHeight, Height);
        FileEdit.Text := IniFile.ReadString(SectionData,  KeyFile,   '');
        IniFile.Free;
    end;
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.FormClose(Sender: TObject; var Action: TCloseAction);
var
    IniFile : TIniFile;
begin
    IniFile := TIniFile.Create(FIniFileName);
    IniFile.WriteInteger(SectionWindow, KeyTop,    Top);
    IniFile.WriteInteger(SectionWindow, KeyLeft,   Left);
    IniFile.WriteInteger(SectionWindow, KeyWidth,  Width);
    IniFile.WriteInteger(SectionWindow, KeyHeight, Height);
    IniFile.WriteString(SectionData,    KeyFile,   FileEdit.Text);
    IniFile.Free;
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.DecodeButtonClick(Sender: TObject);
begin
    Memo1.Clear;
    MimeDecode1.DecodeFile(FileEdit.Text);
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.Display(Msg: String);
begin
    { TMemo cannot hold too much data. Limit to 400 lines }
    if Memo1.Lines.count > 400 then
        Memo1.Clear;
    Memo1.Lines.Add(Msg);
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1PartBegin(Sender: TObject);
begin
    Display('--------- PART ' +
            IntToStr(MimeDecode1.PartNumber) +
            ' BEGIN ----------');
    FCharCnt := 0;
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1PartEnd(Sender: TObject);
begin
    if FCharCnt > 0 then begin
        Display(StrPas(FLineBuf));
        FCharCnt := 0;
    end;

    Display('--------- PART ' +
            IntToStr(MimeDecode1.PartNumber) +
            ' END ----------');
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
{ Decoded data arrives here. This routine suppose that we have text data    }
{ organized in lines.                                                       }
procedure TMimeDecodeForm.MimeDecode1PartLine(
    Sender  : TObject;
    Data    : PChar;
    DataLen : Integer);
var
    I : Integer;
begin
    { Copy data to LineBuf until CR/LF }
    I := 0;
    while (I < DataLen) do begin
        if Data[I] = #13 then   { Just ignre CR }
            Inc(I)
        else if Data[I] = #10 then begin { LF is end of line }
            FLineBuf[FCharCnt] := #0;
            Display(StrPas(FLineBuf));
            FCharCnt := 0;
            Inc(I);
        end
        else begin
            FLineBuf[FCharCnt] := Data[I];
            Inc(FCharCnt);
            Inc(I);
        end;
        if FCharCnt >= (High(FLineBuf) - 1) then begin
            { Buffer overflow, display data accumulated so far }
            FLineBuf[High(FLineBuf) - 1] := #0;
            Display(StrPas(FLineBuf));
            FCharCnt := 0;
        end;
    end;
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1PartHeaderLine(Sender: TObject);
begin
    Display('Part header: ' + StrPas(MimeDecode1.CurrentData));
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.ClearButtonClick(Sender: TObject);
begin
    Memo1.Clear;
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1HeaderLine(Sender: TObject);
begin
    Display('Msg header: ' + StrPas(MimeDecode1.CurrentData));
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1HeaderBegin(Sender: TObject);
begin
    Display('--------- HEADER BEGIN ----------');
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1HeaderEnd(Sender: TObject);
begin
    Display('--------- HEADER END ----------');
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1PartHeaderBegin(Sender: TObject);
begin
    Display('--------- PART ' +
            IntToStr(MimeDecode1.PartNumber) +
            ' HEADER BEGIN ----------');
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}
procedure TMimeDecodeForm.MimeDecode1PartHeaderEnd(Sender: TObject);
begin
    Display('--------- PART ' +
            IntToStr(MimeDecode1.PartNumber) +
            ' HEADER END ----------');
end;


{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}

end.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品丝袜久久久久久app| 国产精品国产三级国产普通话99| 国内精品嫩模私拍在线| 国产精品福利影院| 日韩精品一区在线| 在线一区二区视频| 国产精品一区二区三区99| 亚洲一区免费在线观看| 国产三级欧美三级日产三级99| 色婷婷精品大在线视频| 岛国av在线一区| 毛片av一区二区| 亚洲妇女屁股眼交7| 国产精品第五页| 久久久三级国产网站| 91精品久久久久久久91蜜桃| 色一区在线观看| 成人黄色免费短视频| 久久国产精品色| 五月综合激情日本mⅴ| 中文字幕一区二区三区不卡| 久久综合丝袜日本网| 日韩午夜在线观看| 欧美日本一区二区三区| 在线免费精品视频| 91在线观看视频| 99在线视频精品| 国产91精品免费| 国产精品资源在线看| 精品无人区卡一卡二卡三乱码免费卡| 亚洲午夜羞羞片| 亚洲一级片在线观看| 亚洲综合色自拍一区| 亚洲乱码日产精品bd| 中文字幕制服丝袜成人av| 国产精品入口麻豆九色| 国产日韩亚洲欧美综合| 亚洲国产激情av| 久久精品无码一区二区三区| 久久久久久97三级| 久久久99久久| 国产欧美日韩中文久久| 国产欧美日韩不卡| 国产精品视频免费看| 国产精品久久综合| 《视频一区视频二区| 亚洲免费在线电影| 亚洲精品五月天| 亚洲国产精品欧美一二99| 亚洲电影一区二区| 日本女优在线视频一区二区| 久久99精品久久久久久国产越南| 国产在线视视频有精品| 国产黑丝在线一区二区三区| 成人av网在线| 色婷婷综合中文久久一本| 在线观看成人小视频| 欧美精品乱码久久久久久按摩| 欧美美女bb生活片| 精品国产一区二区精华| 国产精品三级视频| 亚洲一区二区三区三| 三级在线观看一区二区 | 国产精品入口麻豆九色| 中文字幕一区日韩精品欧美| 亚洲一区二区影院| 青青草国产成人av片免费 | 色综合久久久久网| 欧美日产国产精品| 久久精品一区二区三区不卡| 国产精品免费久久| 香蕉乱码成人久久天堂爱免费| 另类小说综合欧美亚洲| 9色porny自拍视频一区二区| 欧洲另类一二三四区| 精品福利视频一区二区三区| 中国色在线观看另类| 午夜精品123| 国产盗摄视频一区二区三区| 色噜噜狠狠一区二区三区果冻| 日韩欧美中文字幕一区| 中文字幕一区二区三区乱码在线| 视频一区免费在线观看| 成人高清伦理免费影院在线观看| 欧美三级日韩三级| 国产校园另类小说区| 亚洲国产乱码最新视频 | 精品成人a区在线观看| 国产精品国产三级国产| 日韩有码一区二区三区| 99久久久久免费精品国产| 日韩三级免费观看| 亚洲麻豆国产自偷在线| 国产自产2019最新不卡| 欧美图区在线视频| 中文字幕av一区二区三区免费看| 天涯成人国产亚洲精品一区av| 成人性色生活片免费看爆迷你毛片| 欧美日韩一区二区三区高清| 国产精品情趣视频| 麻豆精品视频在线观看| 在线免费观看视频一区| 国产精品久久久久久久久免费樱桃| 日本aⅴ免费视频一区二区三区| 91无套直看片红桃| 国产视频一区在线观看| 日韩av中文字幕一区二区三区 | 欧美日韩一区不卡| 国产精品久久久久久久浪潮网站| 美腿丝袜在线亚洲一区| 在线一区二区三区做爰视频网站| 国产日本欧美一区二区| 久久69国产一区二区蜜臀| 在线不卡中文字幕| 洋洋av久久久久久久一区| 91在线看国产| 国产精品拍天天在线| 加勒比av一区二区| 欧美一区二视频| 天天操天天色综合| 欧美性生活一区| 一区二区在线观看视频| 91视频你懂的| 国产精品久久久久久户外露出 | 久久综合九色综合97婷婷| 日韩高清在线一区| 欧美日韩小视频| 亚洲在线观看免费视频| 99久久精品国产一区| 欧美国产一区视频在线观看| 国产一区二区免费看| 久久色中文字幕| 国产乱码字幕精品高清av| 精品久久久久久久久久久久包黑料| 日韩成人av影视| 日韩三级在线免费观看| 精品中文字幕一区二区小辣椒| 日韩免费视频一区二区| 精品一区二区免费看| 精品国产麻豆免费人成网站| 韩国v欧美v亚洲v日本v| 国产欧美日韩视频一区二区| 东方aⅴ免费观看久久av| 久久精品亚洲麻豆av一区二区| 国产成人av一区二区三区在线观看| 久久久国产午夜精品| 成人av在线电影| 一区二区三区日韩| 91麻豆精品国产91久久久资源速度 | 欧美性生活影院| 日韩中文字幕亚洲一区二区va在线| 欧美精品亚洲一区二区在线播放| 丝袜美腿亚洲综合| 日韩欧美激情四射| 国产传媒久久文化传媒| 国产精品二区一区二区aⅴ污介绍| 色综合天天综合狠狠| 亚洲国产精品尤物yw在线观看| 91精品国产综合久久婷婷香蕉 | 亚洲国产综合色| 欧美一级理论性理论a| 精品一区二区三区视频| 国产欧美一区二区在线| 91久久人澡人人添人人爽欧美| 午夜精品爽啪视频| 精品国产乱码91久久久久久网站| 成人一级片在线观看| 夜夜嗨av一区二区三区四季av| 日韩一区二区电影网| 成人午夜精品在线| 五月天久久比比资源色| 国产日韩欧美一区二区三区综合| 99精品黄色片免费大全| 三级欧美在线一区| 国产女人水真多18毛片18精品视频| 91亚洲精品久久久蜜桃| 免费一级片91| 中文字幕欧美一| 日韩一区二区三区观看| 成年人午夜久久久| 免费在线观看成人| 亚洲色图19p| 欧美成人vps| 欧美在线影院一区二区| 国产精品一区二区三区99| 亚洲国产精品久久久久婷婷884| 久久久高清一区二区三区| 色婷婷香蕉在线一区二区| 国产九九视频一区二区三区| 一区二区激情小说| 欧美激情一区三区| 91麻豆精品久久久久蜜臀| 91网站视频在线观看| 国产一区不卡精品| 天使萌一区二区三区免费观看| 中文字幕一区二区不卡 | 精品国产一区a| 欧美日本免费一区二区三区| 粉嫩嫩av羞羞动漫久久久| 青青草精品视频|