AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi For-Schleife verursacht Zugriffsverletzung
Thema durchsuchen
Ansicht
Themen-Optionen

For-Schleife verursacht Zugriffsverletzung

Ein Thema von faux · begonnen am 3. Mai 2004 · letzter Beitrag vom 3. Mai 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#1

For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 15:59
Hallo!

Ich habe folgenden code:

Delphi-Quellcode:
var
  Form31: TForm31;
  NIM: TNotifyIconData;
  OpenUIN: TList;
  UINName, UINList: TStringList;
  Status: TICQStateType;
  SSL: TOnChangeResponse;
...

Delphi-Quellcode:
procedure TForm31.Senden1Click(Sender: TObject);
var
  i: Integer;
  open: boolean;
  {OpenUIN: TList;
  UINName: TStringList;}

begin
  open := true;
  if UINName.Count > 0 then
    for i := 0 to UINName.Count do //Hier tritt die Exception auf....
      if UINList.Strings[ContactList.ItemIndex] = UINName.Strings[i] then
        open := false;
  if open then
  begin
    ShowMessage('Öffnen!');
    UINName.Strings[i] := UINList.Strings[ContactList.ItemIndex];
  end
  else
    ShowMessage('Net!');
end;
beim gekennzeichneten Punkt tritt folgene Meldung auf:

Code:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt CQ.exe ist eine Exception der Klasse EAccessViolation aufgetreten. Meldung: 'Zugriffsverletzung bei Adresse 0047DE9F in Modul 'CQ.exe'. Lesen von Adresse 00000000'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK
---------------------------
Wieso??
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#2

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:01
Hi. Hast du schonmal probiert, statt dem x.Count eine feste Zahl einzusetzen, also nur so zum Probieren?
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#3

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:03
Hallo faux,

du darfst nur bis Count-1 zählen, weil Listen mit dem Index 0 anfangen.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:03
Hi!

Schreib vielleicht mal

UinName.Count-1; Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:07
@MrSpock & fkerber: Hab ich vor dem Post auch schon probiert... geht auch nicht...
Aber danke, hab ich vergessen... muss ich wieder zuschreiben...
[edit]Aber deswegen tritt doch keine Zugriffsverletzung auf...[/edit]

Zitat von Stanlay Hanks:
Hi. Hast du schonmal probiert, statt dem x.Count eine feste Zahl einzusetzen, also nur so zum Probieren?
Dann tritt die Zugriffsverletzung in der nächsten Zeile auf:
if UINList.Strings[ContactList.ItemIndex] = UINName.Strings[i] then //usw (siehe oben)
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#6

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:09
Hi!

Es klingt wirklich so, als würde der Listenindex "überreizt", aber dann müsste unsere Lösung funktionieren.
Seltsam

Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:22
Naja, und was kann ich jetzt machen????
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
Benutzerbild von Treffnix
Treffnix

Registriert seit: 25. Jun 2003
Ort: AC
740 Beiträge
 
Delphi 7 Professional
 
#8

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:25
Ich würde mal tippen, du hast das UInName := TStringlist.Create; vergessen
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#9

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:26
Hallo faux,

dann ist ja noch UINList.Strings[ContactList.ItemIndex] ein Kandidat für die Listenindexüberschreitung!?
Stelle im debug Mode doch einmal fest, was UINList.Count ist und welchen Wert ContactList.ItemIndex hat.
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Tyrael Y.

Registriert seit: 28. Jul 2003
Ort: Stuttgart
1.093 Beiträge
 
Delphi 2007 Professional
 
#10

Re: For-Schleife verursacht Zugriffsverletzung

  Alt 3. Mai 2004, 16:27
ähm nur mal so ne blöde Frage weil Adresse 00000000 Zugriffsverletzung


..ist UInName schon überhaupt kreiert worden ?

Edit: Mist zu spät.
Aber wegem dem 000000000 denke ich die StringListe ist gar nicht kreiert
Levent Yildirim
Erzeugung von Icons aus Bildern:IconLev
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 02:24 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