Arrêt de l'application sur exception
Bonjour à toutes et à tous,
Aussi bizarre que cela puisse paraître, dans l'application suivante, j'utilise une exception pour lancer le programme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| program Sissy_WL;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Interfaces, // this includes the LCL widgetset
Forms;
{$R *.res}
begin
Application.Initialize;
try
xB:= yB div xB; {Si xB = 0 --> exception --> bon fonctionnement}
except
Application.CreateForm(TBase, Base);
Application.Run;
end;
end. |
Si je lance le programme à partie de son fichier .exe, cela fonctionne très bien.
Si je lance l'application à partir de l'EDI (Lazarus 1.2.4, mais pareil avec les versions précédentes), l'application ne se lance pas et j'ai le message :
Citation:
Le projet SISSY_WL a levé une exception de class 'External SIGFPE'
In file 'Sissy_WL.lpr at line 17
xB:= yB div xB; {Si xB = 0 --> exception --> bon fonctionnement}
Ce qui est ci-dessus est un exemple d'arrêt, je l'obtiens dans d'autres cas (alors que le lancement par l'exe fonctionne).
Y a-t-il un moyen d'éviter cela ?
Merci de vote aide.
Pierre