TMemo - Project raised exception class 'External SIGSEGV'.

Für Fragen rund um die Ide und zum Debugger
Antworten
Benutzeravatar
Garfield
Beiträge: 173
Registriert: Do 5. Jun 2008, 22:07
OS, Lazarus, FPC: Ubuntu 22.04 LTS (Laz 3.0 FPC3.2.2)
CPU-Target: 64Bit
Wohnort: Aken

TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von Garfield »

Die Fehlermeldung "Project raised exception class 'External SIGSEGV'." scheint ein Sammelbegriff für viele Fehler zu sein.

Nun trat der Fehler auf, als auf ein TMemo im OnResize zugegriffen werden sollte.

Das Projekt wurde per Werkzeug aus Delphi konvertiert. Danach ist das TMemo in der Class des Formulars vorhanden, wird jedoch weder im Objektinspektor noch auf dem Formular angezeigt. Es besitzt keine Events.

Das TMemo konnte mit dem selben Namen neu erstellt werden. Lediglich die doppelte Deklaration in der Class musste ich entfernen.
Gruß Garfield

Benutzeravatar
theo
Beiträge: 10923
Registriert: Mo 11. Sep 2006, 19:01

Re: TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von theo »

Garfield hat geschrieben:Die Fehlermeldung "Project raised exception class 'External SIGSEGV'." scheint ein Sammelbegriff für viele Fehler zu sein.
Das ist einfach eine Speicherzugriffsverletzung, die vom Betriebssystem gemeldet wird.

Was ist eigentlich deine Frage?

Benutzeravatar
Garfield
Beiträge: 173
Registriert: Do 5. Jun 2008, 22:07
OS, Lazarus, FPC: Ubuntu 22.04 LTS (Laz 3.0 FPC3.2.2)
CPU-Target: 64Bit
Wohnort: Aken

Re: TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von Garfield »

Frage
Warum erhalte ich eine "Project raised exception class 'External SIGSEGV'", wenn ich im OnResize der Form die Größe des Memos einstellen will?

Antwort
Weil Lazarus beim Konvertieren vergessen hat, das Memo auch ins Form einzutragen.

Weitere mögliche Frage
Ist das ein Bug?
Gruß Garfield

Benutzeravatar
theo
Beiträge: 10923
Registriert: Mo 11. Sep 2006, 19:01

Re: TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von theo »

Garfield hat geschrieben:Frage
Warum erhalte ich eine "Project raised exception class 'External SIGSEGV'", wenn ich im OnResize der Form die Größe des Memos einstellen will?
Keine Ahnung. Das macht man normalerweise aber auch besser mit Anchors oder dem Align Property.
Garfield hat geschrieben: Ist das ein Bug?
Naja, das Konvertieren von Delphi Projekten ist doch eher eine "Dreingabe" und wird wohl nie ohne Nachbearbeitung funktionieren.
Vielleicht geht's damit besser: http://wiki.lazarus.freepascal.org/XDev_Toolkit" onclick="window.open(this.href);return false;
Habe ich aber nicht getestet.

Benutzeravatar
Garfield
Beiträge: 173
Registriert: Do 5. Jun 2008, 22:07
OS, Lazarus, FPC: Ubuntu 22.04 LTS (Laz 3.0 FPC3.2.2)
CPU-Target: 64Bit
Wohnort: Aken

Re: TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von Garfield »

Anchors habe bisher nicht benutzt. Scheinen für feste Abstände ganz gut zu sein.

Das Toolkit kannte ich noch nicht. Mal sehen.
Gruß Garfield

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Re: TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von Euklid »

theo hat geschrieben: Naja, das Konvertieren von Delphi Projekten ist doch eher eine "Dreingabe"
Ich würde sagen, dass es durchaus ein Bug in der "Dreingabe" ist.

Benutzeravatar
Garfield
Beiträge: 173
Registriert: Do 5. Jun 2008, 22:07
OS, Lazarus, FPC: Ubuntu 22.04 LTS (Laz 3.0 FPC3.2.2)
CPU-Target: 64Bit
Wohnort: Aken

Re: TMemo - Project raised exception class 'External SIGSEGV'.

Beitrag von Garfield »

Oje. Jetzt bin ich etwas verwirrt. Muss noch mal nachschauen. :?

Im ursprünglichen Delphi-Projekt war es ein TRichEdit, welches es in Lazarus nicht gibt. Aus dem Formular wurde es entfernt. In der Unit ist es aber vollständig erhalten geblieben. Anscheinend hatte ich beim compilen nach der Fehlermeldung die Deklaration von TRichEdit nach TMemo geändert. Wäre es ursprünglich ein TMemo gewesen, wäre es ordentlich übernommen wurden. Scheint also mein Fehler zu sein. :( Wäre vielleicht nicht schlecht, wenn beim Konvertieren aus einem TRichEdit gleich ein TMemo oder zumindest die Deklaration auskommentiert würde.

Das dfmtolfm im SVN des XDev Toolkit ist im übrigen besser, als das was Lazarus 0.9.26 mitbringt. Da stimmen beispielsweise die Positionen der Komponenten in einer TGroupBox. :)
Gruß Garfield

Antworten