Farben verschwinden
-
@ LowFly: Lag wohl doch an dem Speicherleck
-
maRKus23 schrieb:
@ LowFly: Lag wohl doch an dem Speicherleck
Der Farbverlust war ein deutliches Zeichen dafür.

-
trotzdem bekomm ich jetzt diese Zugriffsverletzung.
und ich habe keine Ahnung warum.
-
Wie sieht denn der Callstack aus?
Welcher von deinem Code ist da gerade dran?(Was ein Callstack ist und wie man debugged findest du da.)

-
Na denn werde ich mir das mal bis morgen durchlesen, jetzt mache ich erstmal Feierabend.

Also könnte es sein das noch etwas auf dem Stack liegt wenn ich das Programm beende?
Diese Meldung kam ja erst als ich hbr1-hbr4 auf dem Heap erzeugt habe.

-
Hab mein Problem gelöst!! ^^
//Im Konstruktor hbr1 = NULL; hbr1 = CreateSolidBrush(RGB(0, 0, 0)); //Im Destruktor DeleteObject(hbr1);mein Problem bestand darin das ich delete anstatt DeleteObject verwendete.
Dazu noch 2 kleine Fragen:
-Was ist der Unterschied zwischen delete und DeleteObject?
-Was bedeutet GDI im Kontext mit GDI-Object?
-
Erstmal: Das "hdr1=NULL;" ist überflüssig, weil du den Brush sofort danach korrekt initialisierst.
maRKus23 schrieb:
-Was ist der Unterschied zwischen delete und DeleteObject?
delete löscht nur das Objekt selber, DeleteObject teilt auch deinem System mit, daß das Objekt nicht mehr existiert (andernfalls würde es beim Aufräumen nochmal versuchen, es zu löschen).
-
Danke CStoll!!
Und was heißt GDI?
-
Graphics Device Interface - frei übersetzt "Schnittstelle für Grafikgeräte".
-
-
Danke an alle die mir weiter geholfen haben!