Menüeditor: Totalabsturz

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.

Menüeditor: Totalabsturz

Beitragvon Aliobaba » 11. Sep 2018, 09:18 Menüeditor: Totalabsturz

Hallo,

Soeben wollte ich das Ikon des Menüeditors (mit dem der Menüeditor geöffnet wird) auf ein anderes Formular derselben Anwendung kopieren, was zunächst problemlos möglich ist.
Beim "alten" Formular öffne ich zur Laufzeit das Menü mit einem Rechtsklick auf z.B. einer Grid-Liste. Mache ich dasselbe beim "neuen" Formular (also bei dem Formular, in das ich das Menü-Ikon eingefügt habe), dann kommt es zum Systemabsturz beim Aufruf dieses kopierten Menüs.
Der PC friert so total ein, so dass nur noch ein Reset des PC's hilft (bzw. Stecker ziehen).

Aliobaba

(Kubuntu Ubuntu 18.04.1 LTS Lazarus 1.6.4 vom 6.9.18)
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

Beitragvon Niesi » 11. Sep 2018, 10:22 Re: Menüeditor: Totalabsturz

Aliobaba hat geschrieben:Hallo,

Soeben wollte ich das Ikon des Menüeditors (mit dem der Menüeditor geöffnet wird) auf ein anderes Formular derselben Anwendung kopieren, was zunächst problemlos möglich ist.
Beim "alten" Formular öffne ich zur Laufzeit das Menü mit einem Rechtsklick auf z.B. einer Grid-Liste. Mache ich dasselbe beim "neuen" Formular (also bei dem Formular, in das ich das Menü-Ikon eingefügt habe), dann kommt es zum Systemabsturz beim Aufruf dieses kopierten Menüs.
Der PC friert so total ein, so dass nur noch ein Reset des PC's hilft (bzw. Stecker ziehen).

Aliobaba

(Kubuntu Ubuntu 18.04.1 LTS Lazarus 1.6.4 vom 6.9.18)



Auch Hallo,

den für tMainMenu oder den für tPopupMenu?

Bei mir sind beide Icons immer auf allen Forms zu sehen ...

Beste Grüße
Harald
Niesi
 
Beiträge: 64
Registriert: 26. Jun 2016, 18:44

Beitragvon wp_xyz » 11. Sep 2018, 10:41 Re: Menüeditor: Totalabsturz

Keine Ahnung, was du meinst. Meinst du die TMainMenu- oder TPopupMenu-Komponente, sprichst aber von dessen Icon? Und was soll das mit der "Grid-Liste"? Vielleicht willst du das Kontext-Menü (TPopupMenu), das einem Grid zugeordnet ist, auf ein anderes Formular kopieren? Warum ist es nur so schwer, die Frage so zu formulieren, dass jemand anders sie versteht?
wp_xyz
 
Beiträge: 2672
Registriert: 8. Apr 2011, 08:01

Beitragvon Niesi » 11. Sep 2018, 12:00 Re: Menüeditor: Totalabsturz

Hallo Aliobaba,

kannst Du uns bitte mal 'nen screen shot zeigen, damit wir verstehen, was genau Du meinst?

Gruß
Harald
Niesi
 
Beiträge: 64
Registriert: 26. Jun 2016, 18:44

Beitragvon Aliobaba » 11. Sep 2018, 13:08 Re: Menüeditor: Totalabsturz

Hallo,

ja, wenn ich die "Fachbegriffe" der Programmierer drauf hätte, dann würde ich auch sicher viel mehr von der Materie verstehen und könnte mich auch sicherlich verständlicher ausdrücken.
Im Begleittext zu diesem Unterforum steht: "Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen." Nicht mehr und nicht weniger wollte ich mit diesem Beitrag: Mir ist ein ungewöhnliches Verhalten von Lazarus aufgefallen (und einen totalen Systemabsturz darf man doch so bezeichnen?) und wenn diese Meldung dazu führt, dass der Fehler verifiziert werden kann und behoben werden kann, dann freue ich mich, wenn Lazarus noch einen Tick besser wird als es ohnehin schon ist. Und wenn die Situation auf meinem PC (frisch aufgestztes Kubuntu!) ein seltenes und seltsames Ausnahmeereignis ist - na dann ist es ja auch ok.

Einen Screenshot von einem total abgestürzten PC zu machen ist erstens nicht möglich (der PC macht ja keinen Muckser mehr) und auch wenig hilfreich: Man sieht nämlich nichts, da der PC schlicht eingefroren ist - ohne jede Fehlermeldung..

Die Situation: Ich habe ein Programm geschrieben (sh. Fußnote "MyMemoryDB") und ich bin dabei, die Oberfläche dieses Programms in vielen Punkten neu zu gestalten. Dazu habe ich eine neue Form mit Lazarus geschaffen, auf der aktuell die Programmoberfläche neu aufgebaut wird. Am Ende der Arbeit soll die ursprüngliche "Form" vom Programm total entfernt werden. Viele Elemente einer Form kann man ja einfach in eine andere Form kopieren und genau dies wollte ich mit dem Popup-Menü-Ikon ebenfalls machen. Im Objektinspektor kann man dann ja das Ereignis "PopUp-Menu" doppelklicken und im Programmcode so ein Ereignis erzeugen (auch dafür gibt's sicherlich einen Fachausdruck: Sorry!). Und genau dies wollte ich auch mit den Ikons machen, die auf der "alten" Form bestehen und die ich in die "neue" Form kopieren wollte. In meinem Fall sollte bei einem Rechtsklick auf eine Instanz eines TDBGrid-Elements (wahrscheinlich schon wieder falsch ausgedrückt) das alte Popup-Menü mit den bereits festgelegten Menüeinträgen aufpoppen (dass die Ereignisse nicht mitkopiert werden ist mir klar - dies ist auch bei allen anderen kopierten Elementen von Form "alt" so).
Das Programm kann kompiliert werden, läuft auch problemlos - aber wenn ich den Rechtsklick auf diesen TDBGrid-Abkömmling mache um das Popup-Menü aufzuklappen, dann kann ich reproduzierbar anschließend beim PC nur noch den Stecker ziehen. Nix geht mehr!

Soo: Nur dieses Verhalten wollte ich hier melden, nachdem mich der Untertitel dieses Unterforums dazu aufgemuntert hat. Vielleicht kann ich damit ja dazu beitragen, dass ein Fehler gefunden wird - vielleicht aber auch nicht; dann habe ich es wenigstens versucht.

Schönen Tag noch!
Aliobaba
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

Beitragvon Aliobaba » 11. Sep 2018, 13:26 Re: Menüeditor: Totalabsturz

... ein kleines bisschen weiter bin ich nun gekommen:

Offenbar ist schon eine Debugger-Ausnahme-Nachricht erschienen. Man kannte diese aber nicht sehen, da der PC ja eingefroren ist.
Wenn man dafür sorgt, dass das Programmfenster dezentraler erscheint kann man folgende Meldung lesen:
Projekt "xy" Exception-Klasse "EInterface Warning" Meldung: "Invalid borders spezified for theme pixmap: /usr/share/..../assets/line-h.png
borders don't fit within the image. In Datei "gtk2widgets.inc" in Zeile 1295

Die Buttons "ok" und "übergehen" sind eingefroren.

Wenn man dann aber nach einem PC-Neustart das kompilierte Programm startet, dann funktioniert alles.

Aliobaba
(Angeblich soll es ja nicht so leicht sein, einen Linux-Rechner zum Totalabsturz zu bringen...)
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

Beitragvon Niesi » 11. Sep 2018, 14:45 Re: Menüeditor: Totalabsturz

Hallo Aliobaba,

einen screen shot von dem, was Du da kopierst. Uns ist nicht verständlich, WAS Du da kopiert hast - und: wir wollten DIR helfen, hast Du aber gar nicht gemerkt, oder?

Herzlichen Gruß
Harald
Niesi
 
Beiträge: 64
Registriert: 26. Jun 2016, 18:44

Beitragvon Aliobaba » 11. Sep 2018, 15:51 Re: Menüeditor: Totalabsturz

??? Ich hab doch gar nichts kopiert und habe die Situation ja nur nochmal beschrieben.
Prinzipiell habe ich ja - was meine Programmentwicklung angeht - doch gar kein Problem: Ich erstelle ein neues TPopupMenu auf meinem neuen Formular (Eine Instanz davon), konfiguriere dies manuell nach meinen Wünschen - und es läuft.
Ich dachte halt nur, es könnte jemanden interessieren, wenn ein Vorgang beim Programmieren mit Lazarus dazu führt, dass dies zu einem kompletten Systemabsturz führt.

Entschuldigung!! Darf man hier eigentlich nur mit nahezu perfekten Lazarus-Kenntnissen posten?
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

Beitragvon Niesi » 11. Sep 2018, 15:57 Re: Menüeditor: Totalabsturz

Also ok, ich habe mir in einem Projekt ein tMainMenu und ein tPopupMenu vom MainForm in ein anderen Form kopiert. Es funktioniert, ich kann die kopierten Menüs mit Aktionen belegen, ich kann das Programm kompilieren, ausführen und wieder schließen, ohne die geringste Beeinträchtigung.

Allerdings kann ich in der IDE auch JEDES PopupMenu in jede Form als PopupMenu eintrage (Property tForm.PopupMenu).

Ist jetzt unter Windows 7, Windows 10 und Ubuntu 18.04.1 getestet - also wohl eher KEIN Bug.

Gruß
Harald
Niesi
 
Beiträge: 64
Registriert: 26. Jun 2016, 18:44

Beitragvon Niesi » 11. Sep 2018, 16:04 Re: Menüeditor: Totalabsturz

Aliobaba hat geschrieben:??? Ich hab doch gar nichts kopiert und habe die Situation ja nur nochmal beschrieben.
Prinzipiell habe ich ja - was meine Programmentwicklung angeht - doch gar kein Problem: Ich erstelle ein neues TPopupMenu auf meinem neuen Formular (Eine Instanz davon), konfiguriere dies manuell nach meinen Wünschen - und es läuft.
Ich dachte halt nur, es könnte jemanden interessieren, wenn ein Vorgang beim Programmieren mit Lazarus dazu führt, dass dies zu einem kompletten Systemabsturz führt.

Entschuldigung!! Darf man hier eigentlich nur mit nahezu perfekten Lazarus-Kenntnissen posten?



Du solltest weniger beleidigt sein und eher daran mitwirken, solche "Vorkommnisse" zu klären. Ich bin ganz sicher auch nicht perfekt in Lazarus / Free-Pascal, daher war mir zum Beispiel nicht gleich klar, was Du da getan hast. Da ich aber daran interessiert bin, dass meine Progs sicher laufen, habe ich Deine Angaben mal nachgestellt - so, wie ich es verstanden habe. Bei mir tritt kein Fehler auf, weder unter Windows noch unter Linux (siehe weiter oben).

Danke für Deinen Einsatz und Deinen guten Willen. ABER: ich habe die Erfahrung gemacht, dass im Falle von Fehlern praktisch IMMER die Ursache dieser Fehler genau vor meinem Rechner sitzt. Daher bin ich mit Fehlermeldungen (BUGS) vorsichtig und frage erst mal, was da sein könnte. Sicher kommt dann jemand und hilft Dir- so, wie wp_xyz und ich es ja auch wollen.

Also sei bitte nicht sauer sondern arbeite bitte konstruktiv mit.

Danke und herzlichen Gruß
Harald
Niesi
 
Beiträge: 64
Registriert: 26. Jun 2016, 18:44

Beitragvon Aliobaba » 11. Sep 2018, 16:19 Re: Menüeditor: Totalabsturz

Danke, Harald, für Deine freundlichen Worte,

ich möchte gerne konstruktiv mitarbeiten, deshalb habe ich dieses Programmverhalten ja gepostet (so gut ich eben konnte).
Mir liegt viel am Projekt Lazarus - und sobald der Verein eingetragen ist, werde ich auch beitreten.

Den totalen PC-Absturz kann ich im übrigen immer noch jederzeit reproduzierbar wiederholen. Mich stört ja schon, dass ich den Grund nicht finden werde. Aber damit muss ich mich jetzt wohl abfinden - auch wenn's schwer fällt.

Einen schönen Tag!
A. Geigenberger
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

Beitragvon af0815 » 11. Sep 2018, 21:29 Re: Menüeditor: Totalabsturz

Das Problem ist, der Absturz sollte nachvollziehbar sein. Und zwar an einem womöglichst einfachen Beispiel. Vor allen, das der Absturz so hart sein soll, ist verwunderlich. Du kannst also nur versuchen deinen Absturz womöglich zu vereinfachen. Ev. gibt es wirklich für ein bestimmtes System/Widgetset ein Problem. Ohne es nachvoziehbar zu machen wird es auch keinen Fix geben.

Ich habe selbst schon unlogische Abstürze erlebt, beim reduzieren des Beispiels habe ich meistens in Erfahrung bringen können ob es an Lazarus liegt oder an mir (meist an mir, aber nicht immer).
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3490
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: FPC 3.2 Lazarus 2.0 per fpcupdeluxe | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon Aliobaba » 13. Sep 2018, 10:04 Re: Menüeditor: Totalabsturz

Hallo,
ich weiß sehr gut, dass meine Programmier-Kenntnisse und damit meine Programmierer-Terminologie unbefriedigend sind. Trotzdem möchte ich mich heute nochmal mit diesem Thema melden, auch auf die Gefahr hin, auf Ungeduld zu stoßen (Prügel zu beziehen). Aber egal; sollte ein Fehler in Lazarus stecken, dann möchte ich dennoch gerne dazu beitragen, dass berufenere Leute diesen finden können.

Ich habe das Auftreten des Fehlers nun nochmal deutlicher eingrenzen können; er ist auf meinem frisch aufgestzen Linux-PC (s.o.) beliebig reproduzierbar:

Ich habe auf einer neu angelegten Form eine Liste, abgeleitet von TDBGrid. Außerdem erstelle ich ein PopUp-Menü, abgeleitet von TPopUpMenu.
Mit dem Menüeditor kann ich nun verschiedenste Menüeinträge erzeugen und zur Laufzeit auch aufrufen.
Wenn ich nun eine Trennlinie erzeuge (Bindestrich in Caption) , dann läuft das kompilierte Programm zunächst problemlos, bis ich per Rechtsklick das Menü aufklappen will.
Dann kommt es zum Totalabsturz nicht nur von Lazarus sondern auch zum Einfrieren des gesamten PC's.
Wenn ich dann nach dem PC-Neustart die Trennlinie aus dem Programmcode nehme (Caption kein Bindestrich), dann geht's wieder fehlerfrei. Bei erneutem Ersatz des Caption-Textes mit einem Bindestrich erfolgt genau derselbe Absturz wieder.

Vielleicht kann das ja mal jemand (wohlwollend) nachprüfen.

Aliobaba
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

Beitragvon wp_xyz » 13. Sep 2018, 10:38 Re: Menüeditor: Totalabsturz

Wenn du ein einfaches Projekt erzeugen kannst, in dem der Fehler auftritt, dann lade es hier hoch.

Verwendest du wirklich Laz 1.6.4, so wie es in deiner Signatur steht? Tritt der Fehler auch mit der aktuellen Version auf? Ich weiß, dass am Menü-Editor einiges geändert wurde.
wp_xyz
 
Beiträge: 2672
Registriert: 8. Apr 2011, 08:01

Beitragvon Aliobaba » 13. Sep 2018, 11:02 Re: Menüeditor: Totalabsturz

... weiß auch nicht, warum ich beim Neuaufsetzen des Systems auf die 1.6.4 gestoßen bin; offenbar bin ich auf eine veraltete Webseite gestoßen. Ich finde nun die aktuellere Version 1.8.4-0 und fpc 3.0.4-3. Vermute mal, diese sind deutlich aktueller (?)
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )
Aliobaba
 
Beiträge: 342
Registriert: 1. Mai 2012, 08:11

» Weitere Beiträge siehe nächste Seite »
Nächste

Zurück zu Lazarus - Bugs



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried