Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.05.23;
Скачать: [xml.tar.bz2];

Вниз

D5: траблы с почтой по POP3: summary   Найти похожие ветки 

 
UH   (2002-05-11 14:58) [0]

Добрый..., уважаемые!
Таком трабл с суммарями:
по выполнению процедуры имеем в едит1 - пусто, в едит3 - 0.
Хотя если я сделаю кнопу на форме и буду ее нажимать ручками, то сумари хавается и присваивается соответсвующему едит.тесту.
На сервере естественно есть почта.
Ошибок никаких не выдает, фл2=труе.

Теперь вопрос: ПОЧЕМУ так? Хочу чтобы в едитах было от кого письмо!
ПОМОГИТЕ, ПЛЗ!!!
--------------кут нере-----------------
procedure TForm1.NMPOP31List(Msg, Size: Integer);
begin
if fl2=true then begin
NMPOP31.GetSummary(1);
Edit1.Text := NMPOP31.Summary.From;
Edit3.Text := IntToStr(NMPOP31.Summary.Bytes);
end;
Memo1.Lines.Add(IntToStr(Msg)+" / "+IntToStr(Size));
end;
---------енд оф кут нере-------------------


 
Song   (2002-05-11 15:02) [1]

Надо больше инфы. Весь модуль желательно, если небольшой.


 
UH   (2002-05-13 11:02) [2]

Тут слегка корявый код, не смейтесь - я так и не понял по RFC1939, как проверить прочтенно письмо или это новое письмо, так что пришлось извращаться. BTW, может кто подскажет, где и как из Дельфы по POP3 искать маркер письма unREAD/READ?
Да и вопрос по СУММАРИ все еще открыт, у меня не получается перебороть сие.
---------------кут хере1-----------------------
unit p2s1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Psock, NMpop3, ComCtrls, NMsmtp;

type
TForm1 = class(TForm)
NMPOP31: TNMPOP3;
Button1: TButton;
Button2: TButton;
Label1: TLabel;
Button3: TButton;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Edit5: TEdit;
Label6: TLabel;
Button4: TButton;
Button5: TButton;
Memo1: TMemo;
Button6: TButton;
Button7: TButton;
Memo2: TMemo;
StatusBar1: TStatusBar;
NMSMTP1: TNMSMTP;
Button8: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(mk:integer);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure NMPOP31List(Msg, Size: Integer);
procedure Button6Click(Sender: TObject);
procedure Button7Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure NMPOP31Disconnect(Sender: TObject);
procedure NMPOP31Connect(Sender: TObject);
procedure Button8Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
ft1,ft2:textfile;
fl1,fl2,fl3:boolean;
i1,i2,i3:integer;
s1,s2,s3,all:string;


implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
NMPOP31.AttachFilePath := ".";
NMPOP31.DeleteOnRead := FALSE;
NMPOP31.ReportLevel := Status_Basic;
NMPOP31.TimeOut := 20000;
NMPOP31.Host := "sevrer";
NMPOP31.Port := 110;
NMPOP31.UserID := "user1";
NMPOP31.Password := "*****";
NMPOP31.Connect;
Label1.caption := "# of Messages: "+IntToStr(NMPOP31.MailCount);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
NMPOP31.disconnect;
end;

procedure TForm1.Button3Click(mk:integer);
begin
NMPOP31.GetSummary(mk);
Edit1.Text := NMPOP31.Summary.From;
Edit2.Text := NMPOP31.Summary.Subject;
Edit3.Text := IntToStr(NMPOP31.Summary.Bytes);
Edit4.Text := NMPOP31.Summary.MessageID;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
Button3Click(2);
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
if fl1=true then begin assignfile(ft1,"st1.st1");rewrite(ft1);end;
if fl2=true then begin assignfile(ft1,"st1.st1");reset(ft1);end;
NMPOP31.List;
if fl1=true then begin closefile(ft1);fl1:=false;end;
if fl2=true then begin closefile(ft1);fl2:=false;end;
end;

procedure TForm1.NMPOP31List(Msg, Size: Integer);
var ms1:string;
begin
if fl2=true then
begin
ms1:=inttostr(size);fl3:=false;
while not(eof(ft1)) do begin readln(ft1,s1);
if ms1=s1 then begin fl3:=true;end;end;
reset(ft1);
if fl3=false then begin
memo2.lines.add(ms1);Button4Click(self);end;
end;
Memo1.Lines.Add(IntToStr(Msg)+" / "+IntToStr(Size));
if fl1=true then begin writeln(ft1,inttostr(size));end;
end;

procedure TForm1.Button6Click(Sender: TObject);
begin
fl1:=true;
end;

procedure TForm1.Button7Click(Sender: TObject);
begin
fl2:=true;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
fl1:=false;fl2:=false;fl3:=false;

end;

procedure TForm1.NMPOP31Disconnect(Sender: TObject);
begin
StatusBar1.simpletext:="DIZconnected";
end;

procedure TForm1.NMPOP31Connect(Sender: TObject);
begin
StatusBar1.simpletext:="Connected";
end;

end.

---------------енд оф кут хере1-----------------------



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.05.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.007 c
3-73071
Дремучий
2002-04-25 12:25
2002.05.23
Типчики... Создание BLOB поля в Парадоксе через SQL ?


1-73282
Art1
2002-05-11 13:40
2002.05.23
Как сделать форму невидимой?


3-73005
sergey32
2002-04-25 10:55
2002.05.23
Как в Interbase числовое поле с атрибутами NOT NULL


3-73009
Олег219
2002-04-23 23:08
2002.05.23
Paradox


1-73132
Konsul
2002-05-13 15:38
2002.05.23
Вопрос о свойствах формы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский