Einzelnen Beitrag anzeigen

MechMac

Registriert seit: 10. Aug 2003
4 Beiträge
 
#1

Kleines Problem mit der Indy Komponente "IDPOP3"

  Alt 26. Feb 2004, 19:07
Hallo!

Ein Teil meines Programmes befasst sich mit dem Empfang von Emails. Es soll den Betreff und den Text einer Mail entnehmen.

Das funktioniert mit html-Mails unter verwendung des Quelltextes unten (auszug aus der Indy-Demo) auch ganz gut, nur sobald ich eine reine Text mail empfange fehlt der komplette Text. Auch in der unverändertenm Demo von Indy funktioniert das nicht.
Woran kann das liegen das mein "Mailprogramm" nur Mails mit html-text anzeigen kann?


Delphi-Quellcode:
for intIndex := 0 to Pred(Msg.MessageParts.Count) do
      begin

               if Msg.MessageParts.Items[intIndex] is TIdText then
                  begin
                     Memo1.Lines.Clear;
                     Memo1.Lines.AddStrings(TIdText(Msg.MessageParts.Items[intIndex]).Body);

Gruß, MechMac






-------------EDIT------------------------

Vielleicht noch etwas quellcode zur besseren Verständniss

Delphi-Quellcode:
if msgs>=1 //Prüfen ob es es mehr als eine Nachricht ist
   then
   begin
    for i:=1 to msgs do //Von allen Mails....
       begin
        idpop31.Retrieve(i,msg);
        liste.Items.Add(msg.Subject); //....die Betreffszeilen ins Programm laden
       end;

       for i2 :=1 to msgs do
        begin
         if msg.Subject=edit1.Text //Prüfen ob ein Betreff gleich einer Vorgabe ist
         then
          begin

    for intIndex := 0 to Pred(Msg.MessageParts.Count) do //dann den Text übertragen..
     begin

           if Msg.MessageParts.Items[intIndex] is TIdText then
               begin
                     
                   Memo1.Lines.Addstrings(TIdText(Msg.MessageParts.Items[intIndex]).Body);

                   memo1.Lines.Add('ERFOLG'); //...in ein Memo Feld
                end;
                  end;
    //idpop31.Delete(msgs); //zu Testzwecken entfernt, unvollst.

           end;
    
          end;
        

    end;
idpop31.Disconnect; //trennen
end;
  Mit Zitat antworten Zitat