Forum: Die Delphi-IDE
by Codehunter,
16. Dez 2019
Da wird kein DirectWrite verwendet. Ich finde das Ganze auch sehr verwirrend, weil ich nicht nachvollziehen kann woher diese Variante mit DirectWrite gekommen ist. Ich habe sie inzwischen in verschiedenen Projekten gefunden, aber weder auf Github noch auf SF konnte ich in den Logs Hinweise finden dass es irgendwann mal einen entsprechenden Patch gegeben hätte. Die DirectWrite-Variante enthält...
Forum: Die Delphi-IDE
by Codehunter,
13. Dez 2019
Welches ist denn das "offizielle" SynEdit? Davon gibt es doch inzwischen so viele Forks... Die DirectDraw-Version konnte ich jetzt nicht mal in einem Repository finden. Wir haben diese Variante seit 2018 im Projekt. Die Probleme kamen in meinem Fall nach einem VBox-Update auf. Die Version die man aktuell bei Github findet, ist ein Fork vom einem Zweig, den ich selbst vor 7 Jahren bei Sourceforge...
Forum: Die Delphi-IDE
by Codehunter,
13. Dez 2019
So, wo ich mal wieder Zeit hatte konnte ich das Problem reproduzieren und eingrenzen. Und zwar liegt es am VirtualBox Grafikkartentreiber. Wenn man in den VBox-Einstellungen die Grafikkarte auf VBoxSVGA stellt und den 3D-Support aktiviert, dann wirft SynEdit solche Exceptions. Das kann man mit einem Workaround beheben, indem man in der SynEdit.inc ganz am Ende den DirectWrite-Support...
Forum: Die Delphi-IDE
by Codehunter,
27. Nov 2019
Ich werd noch wahnsinnig :evil:
Es sieht so aus als wäre es mein altes Problem mit der Virtualmachine, nur in neuerer Fehlersymptomatik. An den VM-Einstellungen gedreht, weg ist der Fehler.
Forum: Die Delphi-IDE
by Codehunter,
26. Nov 2019
Spannende Frage! So wie die Implementierung von _IntfClear aussieht mit dem Assembler, wüsste ich erstmal nicht wie. Zumal die System.pas an sich ja nicht wirklich editierbar ist.
Via STRG+F7 wird gesagt, TInterfacedObject(Dest) wäre Nil.
EDIT: Dest ist nur zu Beginn der Prozedur Nil. Unmittelbar vor dem IInterface._Release ist sie gesetzt, jedoch nicht zugreifbar (E2171 Auf Variable...
Forum: Die Delphi-IDE
by Codehunter,
26. Nov 2019
So, jetzt bin ich mit viel F7 bis zur wirklich letzten Zeile gekommen, die dann im CPU-Fenster endet:CALL DWORD PTR + VMTOFFSET IInterface._Release in der System.pas:_IntfClear-Function. Weiter komme ich mit meinem Latein nun nicht mehr. Demnach soll ein Interface freigegeben werden. Nur welches?
Forum: Die Delphi-IDE
by Codehunter,
26. Nov 2019
Das Problem tritt offensichtlich noch vor dem InstHashMap.Finalize auf. Ja sogar noch bevor der finalization-Abschnitt in der System.pas überhaupt begonnen wird.
Irgendwo fand ich auch den Hinweis, dass sowas gerne mal durch vergessene Breakpoints in externen (Microsoft-) DLLs verursacht wird. Da hat doch nicht etwa das Windows-Update irgendwas...???
EDIT: Das letzte das in der System.pas...