AGB  ·  Datenschutz  ·  Impressum  







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

nochmal Objekte freigeben

Ein Thema von khh · begonnen am 23. Dez 2008 · letzter Beitrag vom 23. Dez 2008
Antwort Antwort
Seite 1 von 2  1 2      
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#1

nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:25
also ich habe jetz im ondestroy des form die objekte die ich im oncreate( mit NIL) erstellt habe freigegeben:
FreeAndNil(myObject) bringt ebenso ne exception wie myobject.free

was mache ich falsch?
Karl-Heinz
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:27
Was macht den der Destruktor?
Markus Kinzler
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:28
Moin khh,

ohne konkreten Sourcecode wird sich die Ursache wohl nicht finden lassen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#4

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:30
Zitat von mkinzler:
Was macht den der Destruktor?

ist ein normales TForm und im ondestruct habe ich nur die mit nil erzeugten objekte freigegeben.
Karl-Heinz
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#5

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:35
Zitat von Christian Seehase:
Moin khh,

ohne konkreten Sourcecode wird sich die Ursache wohl nicht finden lassen.

das Seltsame daran ist, dass es keine exception gibt wenn ich die objekte nicht freigebe

der quellcode ist aber zu umfangreich, als dass ich ihn komplett hier posten kann.
ich will mal sehen, ob bei einem kleineren Objekt in der gleichen Konstellation der fehler auch auftritt.
Karl-Heinz
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#6

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:38
Hallo,

wenn es sich um eine EInvalidPointer Exception handelt, dann könnte dieser Thread helfen.

Gruß Hawkeye
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:44
Zitat von khh:
Zitat von mkinzler:
Was macht den der Destruktor?

ist ein normales TForm und im ondestruct habe ich nur die mit nil erzeugten objekte freigegeben.
Ich meinte den von myObject
Markus Kinzler
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#8

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:46
Zitat von mkinzler:
Zitat von khh:
Zitat von mkinzler:
Was macht den der Destruktor?

ist ein normales TForm und im ondestruct habe ich nur die mit nil erzeugten objekte freigegeben.
Ich meinte den von myObject

das sind 3 verschiedene objecte die ihrerseits in ihren destructoren diverse objekte freigeben.
Karl-Heinz
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:49
Und ich vermute der Fehler liegt irgendwo da. Schau dir das Ganze mal im Debugger an
Markus Kinzler
  Mit Zitat antworten Zitat
khh

Registriert seit: 18. Apr 2008
Ort: Südbaden
1.929 Beiträge
 
FreePascal / Lazarus
 
#10

Re: nochmal Objekte freigeben

  Alt 23. Dez 2008, 15:52
Zitat von mkinzler:
Und ich vermute der Fehler liegt irgendwo da. Schau dir das Ganze mal im Debugger an

wird mir wohl nix anderes übrig bleiben

was passiert im schlimmsten Fall wenn ich die Freigabe weglasse?

EDIT: ich habe die objecte jetzt anstatt mit NIL mit self erstellt, dann sollte das mit dem Zerstören beim destroy des elternobjectes ja funktionieren.
Oder krieg ich so bei bestimmten Konstellationen auch ne exception?

danke gruss Kh
Karl-Heinz
  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 00:11 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