Ich glaube, dass es auch deutlich einfacher geht, herauszufinden, wieviele neue E-Mails es gibt.
Ich habe das mal mit PHP gemacht, und eine Funktion geschrieben, welche die Anzahl an ungelesenen E-Mails zurückgibt. Mir würde es sehr wundern, wenn das in Delphi nicht so einfach möglich wäre.
Hier die PHP-Funktion:
Code:
function mailcheck ($server, $protokoll, $username, $passwort, $flag = SA_UNSEEN)
{
if ($protokoll == "imap")
{
$
handle = imap_open ("{" . $server . ":143}INBOX", $username, $passwort);
$daten = imap_status ($
handle, "{" . $server . ":143}INBOX", $flag);
$anzahl = $daten->unseen;
imap_close ($
handle);
return $anzahl;
}
elseif ($protokoll == "
pop3")
{
$
handle = imap_open ("{" . $server . "/
pop3:110}INBOX", $username, $passwort);
$daten = imap_status ($
handle, "{" . $server . "/
pop3:110}INBOX", $flag);
$anzahl = $daten->unseen;
imap_close ($
handle);
return $anzahl;
}
else echo "
[b]Fehler in Funktion mailcheck:[/b]
Bitte \"
pop3\" oder \"imap\" als Protokoll angeben !
";
}
Wie zu sehen ist, gibt es hier eine Variabe mit Wert "SA_UNSEEN", die bewirkt, dass die ungelesenen E-Mails herausgefiltert werden.