A ja w tym czasie zrobilem przy uzyciu Indy 9 sprawdzanie na onet poczcie.
Dziala to tak ->
loguje sie na poczte (ustala ile jest wiadomosci)
Za 9 sekund znow sie loguje i sprawdza czy poprzednia ilosc wiadomosci pasuje do tej co jest jesli nie to oznaka ze jest nowy email - odczytuje temat jesli jest to taki jak chcesz zrobisz sobie odpowiedz na maila. Kod:
procedure TForm1.Button1Click(Sender: TObject);
begin
IdMessage1.Clear;
pop3.Host := 'pop3.poczta.onet.pl';
pop3.Port := 110;
pop3.Username := '[email protected]';
pop3.Password := 'haslo';
if not pop3.Connected then
pop3.Connect(-1);
if pop3.Connected then
begin
wiadomosci := pop3.CheckMessages;
if tyle_jest = 0 then
begin
tyle_jest := wiadomosci;
pop3.Disconnect;
Memo1.Lines.Add('Sprawdz aktualny stan - teraz jest '+IntToStr(tyle_jest));
IdMessage1.Clear;
end else
begin
if tyle_jest < wiadomosci then
begin
Memo1.Lines.Add('Jest nowa wiadomosc');
tyle_jest := pop3.CheckMessages;
pop3.Retrieve(tyle_jest,IdMessage1);
if IdMessage1.Subject = 'test' then
begin
//tutaj zrobisz sobie wyslanie maila
Memo1.Lines.Add('Jest wlasnie temat przy ktorym ma wystapic jakies zdarzenie =]');
end;
pop3.Disconnect;
IdMessage1.Clear;
end else
Memo1.Lines.Add('Brak nowych wiadomosci, odebrane '+IntToStr(pop3.CheckMessages)+' i w zmiennej '+IntToStr(tyle_jest));
pop3.Disconnect;
IdMessage1.Clear;
end;
end;
spr_mail.Create(False);
end;
link do programu:
http://wyslijto.pl/plik/u1r4olcjzu
nie jest to profesjonalne rozwiazanie ale dziala :-)