EExternalException (nur) bei Standalone Exe (war: *.exe File)
-
hast du vielleicht bei dem OnClose()-Ereignis deines Forms die methode des Buttons angegeben? oder hast du da überhaupt was drin ( bei OnClose oder auch OnCloseQuery ).
oder hat dein fenster ein tray icon ?
MFG Simon
-
Ich beende mein Programm mit einem Menu-Item und dahinter steckt:
Close();Liegt es daran?
-
Hast Du irgendwelche ActiveX geladen - Ich hatte sowas mal mit Windows-Mediaplayer als ActiveX.
Lösch mal alle tds, obj- dateien und erzeuge Projekt neu!
-
ActivX bzw. andere Programme werden in diesem Programm nicht eingebunden. Es wird lediglich eine Datei gelesen, in ein StringGrid eingelesen und verändert wieder gespeichert.
Das löschen von *.tds bzw. *.obj Dateien hat auch nichts genützt!
Kann es an dem Close(); liegen?
-
hat inzwischen jemand eine Lösung gefunden?

-
Hallo
was hast du sonst noch in deiner Form->Close drin stehen
(auch in der anderen Form)MfG
Klaus
-
mal sehen,
im MainForm steht das:void __fastcall TMainForm::FormClose(TObject *Sender, TCloseAction &Action) { Action=caNone; StatusBar1->Panels->Items[2]->Text="Beenden"; if (SomethingHasChanged && TreeView1->Enabled) { AnsiString msg="Soll das Makro '"+MakroDaten.Name+"' gespeichert werden?"; int ret=Application->MessageBox(msg.c_str(),"Achtung",MB_YESNOCANCEL); if(ret==6)//ja SaveFile(MakroDaten.FileName); if(ret==2)//abbrechen Action=caNone; else Action=caFree; }else Action=caFree; if(Action==caFree) { MainForm->Visible=false; UnloadActionTree(); ListView1->Items->Clear(); TreeView1->Items->Clear(); actualList.Item.clear(); ActionLists.clear(); } }UnloadActionTree entlädt eine dll
actualLIst und ActionLists sind map's
-
Hallo
wenn du FormClose nicht ausfuehrst (return als erstes )
kommt dann die fehlermeldung oder nichtMfG
Klaus
-
Solche obskuren Sachen können natürlich immer auch eine ganz andere Ursache haben, dass einfach irgendwo Speicher zerstört wird oder so.
Du solltest jedenfalls mal schauen, wo in deinem Programm exceptions geworfen werden können, und zwar solche, die nicht von der VCL-Klasse Exception abgeleitet sind. Das können z.B. auch STL-Exceptions sein. Genau dann kommt nämlich so eine EExternalException.
Und bei den Debugger Options stell "Stop on C++ Exceptions" ein, dann sollte er eh dort stehenbleiben.
-
Hi,
also ich hab in das FormClose mal zu anfang ein return eingefügt. Dehr Fehler kommt trotzdem.
Ringding schrieb:
Du solltest jedenfalls mal schauen, wo in deinem Programm exceptions geworfen werden können, und zwar solche, die nicht von der VCL-Klasse Exception abgeleitet sind. Das können z.B. auch STL-Exceptions sein. Genau dann kommt nämlich so eine EExternalException.
Und bei den Debugger Options stell "Stop on C++ Exceptions" ein, dann sollte er eh dort stehenbleiben.
1. Wie mach ich das?
2. Wo finde ich diese Einstellungsoption?GRuss, Sven
-
Hallo
Menü Tools/Debugger-Optionen, Reiter Sprach-Exceptions, CheckBox unten rechts.
Allerdings ist bei mir die Option immer an.bis bald
akari
-
Hallo
akari schrieb:
Hallo
Menü Tools/Debugger-Optionen, Reiter Sprach-Exceptions, CheckBox unten rechts.
Allerdings ist bei mir die Option immer an.bis bald
akariOK, danke. Ist bei mir auch an, bringt also auch keine Lösung

bis bald