Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Stack-Überlauf beim verschieben von Controls und dfm-Fehler (https://www.delphipraxis.net/198399-stack-ueberlauf-beim-verschieben-von-controls-und-dfm-fehler.html)

NoName1 30. Okt 2018 09:17

Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Liste der Anhänge anzeigen (Anzahl: 2)
Guten Tag,
seit gestern bekomme ich die Meldung Stack-Überlauf, wenn ich auf irgend einem Formular
ein Control, z. B. Button verschiebe und das Formular abspeichern möchte.
Ich habe nichtmals die Möglichkeit auf den Button "Details" der Meldung zu klicken,
weil nur das HourGlass einige Sekunden angezeigt wird und Delphi dann beendet wird.
Eine Datei von madExcept wurde auch nicht erzeugt.
Versuche ich es mit dem Compilieren bekomme ich die Fehlermeldung, dass die dfm-Datei nicht geöffnet werden kann.
Siehe dazu auch die Screenshoots.
Starte ich darauf hin Delphi neu und wiederhole den Vorgang, beendet sich Delphi
sang und klanglos.
Hat jemend einen Rat was ich tun kann, damit wieder alles korrekt läuft?

Der schöne Günther 30. Okt 2018 09:37

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Habe ich auch manchmal. Versuche mal alle Formulare schließen und Projekt bereinigen. Schau dir die DFM-Datei mal in Notepad an, da muss irgendetwas kaputt gegangen sein. Am besten stellst du die Datei auf den vorherigen Stand zurück bevor es aufgetreten ist und vergleichst.

NoName1 30. Okt 2018 12:54

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1417100)
Habe ich auch manchmal. Versuche mal alle Formulare schließen und Projekt bereinigen. Schau dir die DFM-Datei mal in Notepad an, da muss irgendetwas kaputt gegangen sein. Am besten stellst du die Datei auf den vorherigen Stand zurück bevor es aufgetreten ist und vergleichst.

Vielen Dank für Deine Antwort.
Ich bin so vorgegangen wie Du vorgeschlagen hast. Aber es war nicht erfolgreich.
Scheinbar sind in den History-Dateien auch schon Fehler enthalten.
Es scheint auch keine Möglichkeit zugeben die *.dfm-Dateien neu erstellen zulassen.
Beadauerlich, das in Delphi dazu kein Reparatur-Tool vorhanden ist.
Und so an den *.dfm-Dateien rumzuwerkeln traue ich mich nicht. Dazu fehlt mir die Erfahrung
und das Wissen. Ich bin ja noch Lehrling.

Ich habe mich nun entschlossen, das System neu aufzusetzen.
Es stecken immerhin 5 Jahre Entwicklung im System.
Dazu werde ich so vorgehen:
Zuerst alle Units einzubinden, danach alle Formulare wieder hinzufügen.
Mal sehen wie weit ich damit gelange.

hoika 30. Okt 2018 13:20

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Hallo,
Zitat:

Ich habe mich nun entschlossen, das System neu aufzusetzen.
Delphi oder das Projekt?

Zitat:

Es scheint auch keine Möglichkeit zugeben die *.dfm-Dateien neu erstellen zulassen.
Du kannst die letzte Datensicherung (Versionskontrolle, VCS) einspielen.
Da in den DFM-Dateien u.a. die Positionen (Left,Top, Width,Height) der Komponenten stehen,
und nur dort, klappt das "neue erstellen" natürlich nicht.
Falls die kein VCS hast, kannst Du auch die letzte Version aus dem History-Ordner holen.

Mach doch einfach eine Datensicherung des Projektpfades und lösche dann den history-Ordner.
Ob es daran liegt, wage ich aber zu bezweifeln.

NoName1 30. Okt 2018 16:09

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
An den Anwortern,
es ist und bleibt eigenartig.
Ich habe ein neues Projekt in einem neuen Ordner angelegt.
Danach habe ich alle Units in den Projektordner kopiert, so dass die gleiche
Ordnerstruktur vorhanden ist.
Bevor ich die Units hinzugefügt habe, habe ich alle _history Ordner gelöscht.
Das Projekt wird mit den neu hinzugefügten Units fehlerfrei Compiliert.
Wenn ich jedoch ein Formular hinzufüge und dann wieder compiliere, tritt die
"dfm" Fehlermeldung wieder auf und Delphi verabschiedet sich.
Scheinbar sind die alle *.dfm Dateien defekt.
Auch habe ich bemerkt das manche _history-Odner als verstekt angelegt werden.
Dies ist doch nicht standard? Kann das irgendwo in Delphi eingestellt werden?

Ich habe eine dfm-Datei mit Notpad geöffnet und angesehen. Wie soll ich feststellen was in der
Datei evtl. alles falsch ist?
Gibt es wirklich keine Möglichkeit die *.dfm-Dateien neu erstellen zu lassen??

Muss ich nun alle Formulare neu erstellen??

Der schöne Günther 30. Okt 2018 16:14

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Zitat:

Zitat von NoName1 (Beitrag 1417122)
Scheinbar sind die alle *.dfm Dateien defekt.

Schwer vorstellbar.
Nur der Vollständigkeit halber: Andere Projekte haben das Problem nicht?

NoName1 30. Okt 2018 16:27

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1417123)
Zitat:

Zitat von NoName1 (Beitrag 1417122)
Scheinbar sind die alle *.dfm Dateien defekt.

Schwer vorstellbar.
Nur der Vollständigkeit halber: Andere Projekte haben das Problem nicht?

Du hast recht. Auf Deinen Hinweis hin habe ich 2 andere Projekte geprüft.
Oh Schreck, gleiche Fehlermeldungen bei den *.dfm-Dateien.
Was kann das sein? Festplatte evtl. defekt?. Es ist eine SSD-Platte.
Ich kann mir keinen Reim darauf machen. Hat Du noch einen Tip/Rat was es sein kann??

Der schöne Günther 30. Okt 2018 16:33

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Ja, kann ich. Das habe ich auch oft. Immer die Formulare, normaler Quelltext ist nie ein Problem.
Delphi zerstört sich hier immer wieder gerne selbst in der Registry etwas und danach ist es kaputt.


Zwei Schritte

1. Du startest Delphi (die bds.exe) mit einem Parameter -rTest oder -rNoName oder was auch immer. Damit hast du ein frisches Delphi-Profil. Wahrscheinlich fehlen dir nun ein paar Plug-Ins und Komponenten. Aber ein frisches Projekt sollte wieder gehen, oder? Du könntest jetzt so weiter machen bis es das nächste mal auseinander fällt.

Alternativ machst du noch Schritt 2:

2. Du sicherst deinen Gesamten Registry-Schlüssel unter
Code:
HKEY_CURRENT_USER\Software\Embarcadero\Test
. "Test" ist natürlich das was du in Schritt 1 gewählt hast. Wenn es das nächste mal auftritt (bei mir ca. 2 mal die Woche) spielst du diese Registry-Datei einfach wieder ein.

NoName1 30. Okt 2018 17:14

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Danke für die rasche Antwort.
Wenn ich so vorgehe wie Du es beschreibst, dann fehlen alle Componenten.
Wie soll Delphi denn die installierten Componenten erkennen?
Ich benutze die Componenten von TMS und die lassen sich nur installieren wenn Delphi nicht aktiv ist.
Wie soll das funktionieren? Kann man Delphi nicht anders reparieren?
Aus der Installationsroutine heraus geht es ja auch nicht korrekt.

Der schöne Günther 30. Okt 2018 17:41

AW: Stack-Überlauf beim verschieben von Controls und dfm-Fehler
 
Zitat:

Zitat von NoName1 (Beitrag 1417127)
Wenn ich so vorgehe wie Du es beschreibst, dann fehlen alle Componenten.

Richtig, aber es läuft überhaupt erst einmal, oder?

Deine Komponenten kannst du entweder

über Delphi im Menü Komponente -> Packages installieren wieder nachinstallieren


oder du gehst im Registry-Editor hin und kopierst deinen alten Schlüssel unter


HKEY_CURRENT_USER\Software\Embarcadero\17.0\Known Packages

in dein neues

Computer\HKEY_CURRENT_USER\Software\Embarcadero\Te st\17.0\Known Packages


In meinem Fall steht "17.0" für "Delphi 10.0 Seattle" und "Test" ist der Name den ich für das neue Profil gewählt hatte.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:13 Uhr.
Seite 1 von 2  1 2      

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