access vîolation

derGugi

Erfahrenes Mitglied
hallo
ich blick echt nicht mehr durch. ich hab folgenden code:
Code:
  //Speicher reservieren
  getMem(PCount,SizeOf(Integer));
  //Plant Liste lesen
  PComLib_readPlantList(DBHandle, PPlantNames, PCount);

  for i := 0 to PCount^ -1 do
     cbPlantNames.Items.Add(PPlantNames^[i]);

  freeMem(Pcount,SizeOf(Integer));

ich drück F9 und juhu es funzt. dann ändere ich schnell ein paar andere sachen und es funzt plötzlich nicht mehr! auch wenn ich exakt den selben zustand herstelle, wie beim ersten mal. es kommt immer bei der zeile mit dem funktionsaufruf ein access violation error. wenn ich cbPlantNames.items.... lösche dann geht es! aber wenn ich die zeiger rausnehme also so schreibe: cbPlantNames.items.add('asdf'); dann geht es wieder nicht mehr. also es liegt an der Combobox. aber warum??? und warum kommt der error nicht erst da?

ich hoffe jemand kann mir helfen... danke
 

Dario Linsky

Erfahrenes Mitglied
Welche Delphi-Version benutzt Du denn?
Evtl. hilft es, wenn Du einfach mal die IDE schliesst und neu startest und den Code nochmal compilierst. Solche Probleme hab leider ich auch manchmal (Delphi 6 Professional), aber nach einem Neustart ist das meistens wieder In Ordnung. :rolleyes:
 

derGugi

Erfahrenes Mitglied
nö ist nicht deswegen, hatte ich anfangs auch gedacht. es ist, weill ich vergessen habe, speicher zu reservieren... k.A. warums am anfang ging, vielleicht hab ichs wirklich rausgelöscht... naja egal, es geht nun wieder.
das fehlte:
Code:
getMem(PPlantNames,SizeOf(PPlantNames));