home *** CD-ROM | disk | FTP | other *** search
/ Chip 2002 November / Chip_2002-11_cd1.bin / zkuste / delphi / kompon / d3456 / SYNAPSE.ZIP / source / demo / mime / Unit1.pas < prev   
Pascal/Delphi Source File  |  2002-07-18  |  2KB  |  89 lines

  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   StdCtrls, mimemess, mimepart;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     Edit1: TEdit;
  12.     Button1: TButton;
  13.     ListBox1: TListBox;
  14.     Label1: TLabel;
  15.     Memo1: TMemo;
  16.     Button2: TButton;
  17.     Label2: TLabel;
  18.     procedure Button1Click(Sender: TObject);
  19.     procedure FormCreate(Sender: TObject);
  20.     procedure FormDestroy(Sender: TObject);
  21.     procedure ListBox1Click(Sender: TObject);
  22.     procedure Button2Click(Sender: TObject);
  23.   private
  24.     { Private declarations }
  25.   public
  26.     Mime:TMimemess;
  27.     { Public declarations }
  28.   end;
  29.  
  30. var
  31.   Form1: TForm1;
  32.  
  33. implementation
  34.  
  35. {$R *.DFM}
  36.  
  37. procedure TForm1.Button1Click(Sender: TObject);
  38. var
  39.   n:integer;
  40.   s:string;
  41. begin
  42.   mime.Clear;
  43.   listbox1.Clear;
  44.   memo1.Clear;
  45.   mime.Lines.LoadFromFile(edit1.text);
  46.   mime.DecodeMessage;
  47.   ShowMessage(datetimetostr(mime.Header.Date));
  48.   for n:=0 to mime.MessagePart.GetSubPartCount-1 do
  49.     begin
  50.       with mime.MessagePart.GetSubPart(n) do
  51.         begin
  52.           s:=format('%12s/%-12s %-15s %-s',[primary,secondary,filename,description]);
  53.         end;
  54.       listbox1.items.Add(s);
  55.     end;
  56. end;
  57.  
  58. procedure TForm1.FormCreate(Sender: TObject);
  59. begin
  60.   mime:=TMimemess.create;
  61. end;
  62.  
  63. procedure TForm1.FormDestroy(Sender: TObject);
  64. begin
  65.   mime.free;
  66. end;
  67.  
  68. procedure TForm1.ListBox1Click(Sender: TObject);
  69. begin
  70.   memo1.Lines.assign(mime.MessagePart.GetSubPart(listbox1.ItemIndex).Lines);
  71. end;
  72.  
  73. procedure TForm1.Button2Click(Sender: TObject);
  74. var
  75.   f:string;
  76. begin
  77.   with mime.MessagePart.GetSubPart(listbox1.ItemIndex) do
  78.     begin
  79.       f:=filename;
  80.       if f=''
  81.         then f:='mimedemo.txt';
  82.       f:='c:/'+f;
  83.       Decodepart;
  84.       decodedlines.SaveToFile(f);
  85.     end;
  86. end;
  87.  
  88. end.
  89.