JVCL - EAccessViolation beim schliessen des Programms



  • Ich wollte mal etwas die JVCL testen. (JVCL aktuelle Version / Rad Studio 2010)

    Jetzt ist mir aber ein sehr komischer effekt aufgefallen:
    - Neues Projekt erstellen
    - eine beliebige Jvcl oder Jcl komponente einfügen
    - Laufzeit packages deaktivieren
    - Compilieren

    Sobald ich das einmal gemacht habe, bekomme ich mit deaktivierten Laufzeit-Packages einen EAccessViolation beim beenden meines Programmes. Egal ob die Jvcl Komponente aus dem Programm gelöscht wurde oder nicht.

    Das ganze passiert nach return 0 in der WinMain.

    Projekt schliessen und neues erstellen hilft.
    Kann man die Jvcl Komponenten nicht ohne Laufzeit-Packages nutzen?

    Kann mir jemand einen Tipp geben wie ich das beheben kann 😕

    :763cb727 KERNELBASE.RaiseException + 0x58
    :32ab32b6 CC32100MT.___raiseDebuggerException + 0x1a
    :32ab3390 CC32100MT.___raiseDebuggerException + 0xf4
    :77df6ac9 ; ntdll.dll
    :77df6a9b ; ntdll.dll
    :77dc010f ntdll.KiUserExceptionDispatcher + 0xf
    :32ad8b5f ; C:\Windows\SysWOW64\CC32100MT.DLL
    :32ad8bae ; C:\Windows\SysWOW64\CC32100MT.DLL
    :32ad5b18 CC32100MT._exit + 0x10
    :32ad8d84 ; C:\Windows\SysWOW64\CC32100MT.DLL



  • Jonny123 schrieb:

    Kann man die Jvcl Komponenten nicht ohne Laufzeit-Packages nutzen?

    Jedenfalls solltest du gemeinsam mit den Laufzeit-Packages auch die dynamische RTL deaktivieren.



  • audacia schrieb:

    Jedenfalls solltest du gemeinsam mit den Laufzeit-Packages auch die dynamische RTL deaktivieren.

    mache ich natürlich



  • Dann kann ich mir deinen Stacktrace, der durch cc32*mt.dll geht, nicht erklären.

    Ich hab's gerade mal mit XE getestet: neue VCL-Anwendung, ein, zwei JVCL-Komponenten draufgezogen, Laufzeitpackages und dynamische RTL deaktiviert. Keine Probleme. Eine meiner Anwendungen, die einiges aus JCL und JVCL benutzt, habe ich bis vor kurzem noch mit C++Builder 2010 und ohne Laufzeitpackages erstellt, und hatte auch da keine Probleme.

    Welche Revision (bekommst du via svn info ) von JCL und JVCL verwendest du?



  • Hi,

    ich greif das alte Thema mal auf weil ich genau das gleiche Problem habe.

    Windows XP + C++ Builder 2010 + JVCL 3.40

    Erstelle eine neue VCL-Anwendung -> Läuft
    Schalte dynamisches RTL und Laufzeitpackages ab -> Läuft
    Ziehe eine JVCL-Komponente drauf -> Läuft, aber wirft Exception beim Beenden
    Entferne JVCL-Komponente wieder -> Immer noch Exception
    Schalte RTL und Laufzeitpackages wieder an -> Läuft, aber halt mit Runtimes was ich nicht will

    😕

    Kann das jemand nachstellen ?


Anmelden zum Antworten