Delphi-Version: XE
Exception wird nicht angezeigt
Hallo,
ich habe in meinem Programm versucht, die Wurzel einer negativen Zahl zu ziehen, was natürlich nicht geht und im Programm inzwischen auch korrigiert ist. Was mich aber interessiert: Die Exception wurde auf meinem System nicht ausgelöst, weder im Debug-Modus, noch bei Start ohne Debugger. Auf dem Kundenrechner kam allerdings korrekt die Meldung "Invalid floating point operation". Ich habe inzwischen auch die Funktion SetExceptionMask gefunden, wenn ich
Code:
vor die fehlerhafte Anweisung setze, wird die Exception auch ausgelöst. Aber z.b. eine Division durch null löst eine Exception aus, obwohl exZeroDivide auch in der ExceptionMask drin steht. An der Exceptionmask fummle ich sonst im Programm nirgends rum.
SetExceptionMask(GetExceptionMask -[exInvalidOp]);
Wer kann mir hier die Zusammenhänge noch etwas erläutern bzw. einen aufklärenden Link schicken. Gruß Rainer |
AW: Exception wird nicht angezeigt
Zeig mal den ursprünglichen Code.
|
AW: Exception wird nicht angezeigt
Zitat:
Hoehe hat nach der Operation den Wert -NAN
Code:
//SetExceptionMask(GetExceptionMask -[exInvalidOp]);
Hoehe:=Einstellungen.LaengeSchere-sqrt(Sqr(Einstellungen.Laengeschere)-sqr(hoehe)); |
AW: Exception wird nicht angezeigt
Hm, kann ich nicht nachvollziehen:
Delphi-Quellcode:
Exception wird ausgelöst und gefangen.
procedure TForm1.btn1Click(Sender: TObject);
var Hoehe: Double; begin try Hoehe:=50-sqrt(Sqr(5)-sqr(25)); ShowMessage(FloatToStr(Hoehe)); except on E: Exception do ShowMessage(E.Message); end; end; |
AW: Exception wird nicht angezeigt
Zufälligerweise eine HP-Drucker installiert? AFAIK stellen/stellten diese Systemweit an der Exception-Maske rum.
|
AW: Exception wird nicht angezeigt
Zitat:
|
AW: Exception wird nicht angezeigt
Zitat:
|
AW: Exception wird nicht angezeigt
Suuuuper, wenn irgendwas aus unerklärlichen Gründen nicht richtig läuft, darf man dann nicht nur nach Logitech-, sondern auch nach HP-Hardware fragen :wall: (was denken die sich eigentlich alle?)
|
AW: Exception wird nicht angezeigt
Hm, ein HP-Drucker ist nicht installiert, aber der Laptop ist von HP. Und der Monitor ebenfalls :?.
Außerdem muss es an irgendwelchen Einstellungen liegen, denn eben habe ich ein neues, einfaches Projekt erstellt, das kann die Exception. Aber bewusst habe ich halt mal wieder nirgends rum gepfuscht, über so was stolpert man irgendwann in einem komplexen Projekt und steht dann wieder da wie der Ochs vorm Berg. |
AW: Exception wird nicht angezeigt
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz