AGB  ·  Datenschutz  ·  Impressum  







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

Stack überlauf

Ein Thema von EWeiss · begonnen am 8. Sep 2016 · letzter Beitrag vom 11. Sep 2016
Antwort Antwort
EWeiss
(Gast)

n/a Beiträge
 
#1

AW: Stack überlauf

  Alt 9. Sep 2016, 08:22
Zitat:
Du meinst as TSkinPopupWindow, oder?
Ja richtig
Habe es so eingetippt und nicht nachgedacht.

Wie man am Bild sehen kann (ein langer Name für den Folder und kein Problem.

Langer Ordner Name so heißt dann der Skin

Ich habe damit keinerlei Probleme.
Das verstehe ich nicht.

Umbenannt
Und es kracht.

gruss

Geändert von EWeiss ( 9. Sep 2016 um 08:37 Uhr)
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.985 Beiträge
 
Delphi 12 Athens
 
#2

AW: Stack überlauf

  Alt 9. Sep 2016, 11:01
Ich weiß nicht ob ich eine hilfe sein kann, weil ja schon alle die über die Interna Delphis bescheid wissen geantwortet haben.
Aber ich hatte auch mal ein Problem mit namen in Delphi und vielleicht nimmt der Stacküberlauf ja in einem ganz trivialen Problem den Anfang.

Wegen der Message Queue soll man ja Formulare nicht mit Free zerstören sondern mit Release.
Ich habe die Erfahrung gemacht dass man obwohl man ein Formular mit Release zerstört hat nicht sofort danach wieder ein Formular mit selben namen erzeugen kann.
Es führt zu einer Exception. ...unique component name....bla
Hab nen globalen ID counter an alle Formular-Namen anhängen müssen und ne eigene Methode für Namensvergleiche geschrieben um dem Herr zu werden.

Kann es sein dass es irgendwo in deinem Projekt noch einen String "Energy" gibt der als Componentname Verwendung findet während des Abräumens der Anwendung? Vielleicht eine Liste von TCompoents oder so?
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Stack überlauf

  Alt 9. Sep 2016, 15:56
Hallo,

"Energy" darf der Ordner ja eh nicht heissen.

Das Wort ist doch für uns Trekkies reserviert
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.809 Beiträge
 
Delphi 12 Athens
 
#4

AW: Stack überlauf

  Alt 9. Sep 2016, 16:00
Engage...oder eben Energie.

https://www.youtube.com/watch?v=3jd1Ih8EUmw

Ausser natürlich: https://www.youtube.com/watch?v=bUtz...utu.be&t=8m20s

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann

Geändert von Sherlock ( 9. Sep 2016 um 16:17 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Stack überlauf

  Alt 9. Sep 2016, 16:39
Mal so ins Blaue
a) Vergrößere den Stack, dann gibt's keine Fehlermeldung mehr (nicht ernst gemeint)
b) Verkleinere den Stack, dann knallt es früher, und vllt. an der richtigen Stelle.
c) Was ist der Unterschied zwischen Energie/y und den anderen Skins abgesehen vom Namen? wird da etwas rekursiv aufgerufen?

Und natürlich ganz banal, der Stack läuft über wenn man zuviel darauf schiebt.

Ich weiß jetzt auch nicht mehr ob "Stack Frame" Dir beim Finden des Fehlers hilft. Irgendwann vor langer Zeit, war das auf jeden Fall empfehlenswert.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: Stack überlauf

  Alt 9. Sep 2016, 18:05
Zitat:
Vielleicht eine Liste von TCompoents oder so?
Der Name hat keinerlei Bezug zum Quelltext wenn man davon absieht das ich rekursive im Skin Ordner nach den Namen Anwendung.ske suche.

Also wenn diese Soundmachine.exe heißt suche ich nach dem Konfigurationsfile Soundmachine.ske
Wenn gefunden wird der Name des Folder als Skin identifiziert und damit zum Menu addiert.

Daher verstehe ich den Bezug nicht warum nur wegen der Namensgebung ein Überlauf stattfindet.

Zitat:
Und natürlich ganz banal, der Stack läuft über wenn man zuviel darauf schiebt.
Dann müsste er eher bei Energys überlaufen anstatt bei Energy.
Klar kann ich einen anderen Namen verwenden nur das ist nicht der sinn der Sache.

Zitat:
Das Wort ist doch für uns Trekkies reserviert
Genau darauf ist er ja auch ausgelegt.


gruss

Geändert von EWeiss ( 9. Sep 2016 um 18:27 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.603 Beiträge
 
Delphi 12 Athens
 
#7

AW: Stack überlauf

  Alt 9. Sep 2016, 22:32
Kannst du mal ausprobieren, ob es an dem String Energy liegt, oder ob auch ein anderer Text mit gleicher Länge das Problem zeigt?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  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 03:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz