AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit ListenIndex überschreitung

Ein Thema von The Re@l · begonnen am 13. Jan 2003 · letzter Beitrag vom 13. Jan 2003
Antwort Antwort
The Re@l

Registriert seit: 2. Jan 2003
77 Beiträge
 
#1

Problem mit ListenIndex überschreitung

  Alt 13. Jan 2003, 18:54
Hi

Ich könnte nochmal Hilfe gebrauchen.

Code:
procedure TfrmMainWindow.ffnen1Click(Sender: TObject);
Var
anzmails: longint;
Email:   TEmail;
i, j:  Integer;
IdMessagePart: TIdMessagePart;
begin
//alle nötigen Parameter setzen
popmain.UserId := Konfiguration.Account;
popMain.Password := Konfiguration.Passwort;
popMain.Host   := Konfiguration.POP;

//Verbindung Herstellen
popmain.Connect;

//Anzahl der Mails holen
AnzMails := popMain.CheckMessages;

//mails holen
if Anzmails > 0 then
begin

// EMail herunterladen
EMail := TEMail.Create(Application);
popMain.Retrieve(i, EMail);

// Teile der Email durchgehen
For j:=0 to EMail.MessageParts.Count do
begin

//wenn ein Teil Text ist, diesen in Email ablegen
IDmessagePart := Email.messageparts.items[0];
if IDmessagepart is Tidtext then
EMail.Body := (IdMessagePart as Tidtext).body;
 end;

//zum Schluß speichern und aufräumen
EMail.Speichern('.\Posteingang');
Email.Destroy;
popMain.Delete(i);

//Verbindung trennen
popMain.Disconnect;

//StringGrid aktualisieren
Aktualisieren(trvPostfach.selected);
end;
 end;

Problem wenn ich nun meine E-Mails Abrufen möchte bekomme ListenIndex überschreitet das Maximum (0).

Danke schon mal im Voraus
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#2

Re: Problem mit ListenIndex überschreitung

  Alt 13. Jan 2003, 18:59
Du hast eine 0 basierte Liste, d.h. die Items gehen von 0 bis Count-1
Code:
// Teile der Email durchgehen
For j:=0 to EMail.MessageParts.Count[color=#ff0000]-1[/color] do
begin

[i][color=#3b00ff]// anschließen 0 mit J ersetzen[/color][/i]
//wenn ein Teil Text ist, diesen in Email ablegen
IDmessagePart := Email.messageparts.items[[color=#ff0000]j[/color]];
......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
The Re@l

Registriert seit: 2. Jan 2003
77 Beiträge
 
#3
  Alt 13. Jan 2003, 19:16
Danke sakura

Ich bin noch anfänger, aber ich hab wieder was gelernt.

P.S.

Im obigen code
Code:
if Anzmails > 0 then
begin
sollte so aussehen

Code:
if Anzmails > 0 then
begin
for i:=1 to AnzMails do
begin
Hatte ich zuvor ausgeschnitten und nich gemerkt sorry
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz