![]() |
Delphi-Version: XE4
NAN Error nach Windows Update
Es gibt hier von 2010 einen Thread
![]() Aber das kann es bei uns nicht sein. Kunden von uns haben Windows Updates eingespielt und nun werfen unsere Programm ( nicht immer aber mehrmals am Tag ), den Fehler NAN ist kein gültiger Fließkommawert aus. Programme die schon länger beim Kunden sind und kein Update erhalten haben. Wir haben nun innerhalb einer Woche 3 kunden welche das Problem mehrmals am Tag haben und angeblich die Programme von uns komplett beenden müssen, damit es wieder funktioniert. Dabei ist es scheinbar egal ob das Programm mit Delphi 6, XE4 oder Berlin kompiliert wurde. |
AW: NAN Error nach Windows Update
MaskEdits?
Mavarik |
AW: NAN Error nach Windows Update
Die Frage ist ob wie MaskEdit Felder benutzen?
Falls ja, dann nein das benutzen wir nicht. |
AW: NAN Error nach Windows Update
Hallo,
MadExcept benutzen, um beim Kunden den Fehler zu finden. Besser wäre es aber, den Fehler selber nachstellen zu können. |
AW: NAN Error nach Windows Update
Ist das nicht verwandt mit dem Problem wie z.B. Druckertreiber (oder andere Dinge die von der eigenen Anwendung verwendet werden) die FPU-Einstellungen des Prozesses ändern und nicht wieder auf Delphi-Eigenart zurückstellen wenn sie fertig sind?
|
AW: NAN Error nach Windows Update
Das stand in dem anderen Thread.
Laut unserem Kunden würde das neustarten des Programmes das Problem lösen. Mad Except wäre eine Idee. |
AW: NAN Error nach Windows Update
Hat das Update eventuell das Dezimaltrennzeichen geändert und euer Programm kommt damit nicht klar?
|
AW: NAN Error nach Windows Update
Zitat:
Der Fehler tritt auch nur sporadisch pro PC auf, wenn der Fehler da ist, behebt nur das neu starten des Programmes den Fehler. Andere PCs mit dem gleichen Programm auf den gleichen Datensatz haben kein Problem, aber es kann 1h auf dem gleichen PC, der gleiche Fehler auftreten. Alle PCs haben eins gemeinsam. Es sind Windows 10 PCs mit dem neuesten Update. Bei einem Kunden müsste ich nach den Druckern fragen, aber die haben eine Kooperation mit Canon und nicht HP. |
AW: NAN Error nach Windows Update
Ok das Problem ist relativ simpel, hat aber definitiv was mit dem neuesten Windows Update ( scheinbar für alle Windows Versionen ) zu tun.
Und zwar ist nach einem .navigate auf der TWebBrowser danach das Exception Handling im Eimer. Das passiert sogar mit alten Windows/IE Versionen, wenn auf der Seite ein Fehler auftritt. 403, Script Error usw. Aber mit den neuen gepatchten Windows Versionen reicht ein about:blank
Code:
Resultat ist keine Exception und in A steht INF.
procedure TForm1.Button1Click(Sender: TObject);
var a,b: real; begin webbrowser.Navigate('about:blank'); // webbrowser.Navigate('http://www.google.de'); try a:= 100; b:= 100; a:= a / (100 - b); showmessage(format('<%.2f> <%.2f>',[a,b])); except // a := 0; // on e:EZeroDivide do showmessage('EZeroDevide'); on E : Exception do ShowMessage(E.ClassName+' error raised, with message : '+E.Message); end; end; In ein paar anderen Konstellationen kann auch NAN drin stehen. Edit : System.Set8087CW(Default8087CW); nach .navigate aktiviert das Handling wieder. Edit2 : 100% kann man sich auf das Set doch nicht verlassen und letztendlich ist das Problem auch das sich einige bei uns das Leben einfach gemacht haben und mit try/except eine Div durch 0 abzufangen :-) Die sauberste Variante ist natürlich das abfangen ob durch 0 dividiert wird. |
AW: NAN Error nach Windows Update
Kannst du das Problem mit dem verstellten x87 Modus bitte in Quality.embarcadero.com erfassen?
Evtl. können die ja etwas tun und es wird auch für die internationale Community besser sichtbar. |
AW: NAN Error nach Windows Update
Heißt ich hatte Recht 😎
|
AW: NAN Error nach Windows Update
Descha wü :)
Why 1.99 suddenly no longer equals 1.99 ![]() "TIBDataBase.Create(nil) changes the value of Get8087CW from $1372 to $1272 ..." |
AW: NAN Error nach Windows Update
Zitat:
|
AW: NAN Error nach Windows Update
Ja und, hat jetzt jem,and von euch geprüft, ob das bereits in QP erfasst ist und falls nicht es erfasst?
|
AW: NAN Error nach Windows Update
Zitat:
Hier hat Microsoft doch ein bestehendes Verhalten kaputt gemacht. |
AW: NAN Error nach Windows Update
Zitat:
aber evtl. könnte EMBT drum herum arbeiten? Ginge vielleicht so etwas wie alten Wert vor Aufruf merken und direkt nach diesem Aufruf wieder setzen? Oder ist der Aufruf ein direkter COM-Aufruf ohne einen Wrapper drumherum? Dann ginge sowas natürlich nicht. Grüße TurboMagic |
AW: NAN Error nach Windows Update
Zitat:
|
AW: NAN Error nach Windows Update
Zitat:
Wer hat einen Draht zu dem? Evtl. EMBT? Falls dem so ist, sollte in einem QP report drinstehen, dass das Problem an der Wurzel beseitigt werden sollte und EMBT da ruhig seine Kommunikationskanäle nutzen kann um den Verursacher auf das Problem aufmerksam zu machen. Alternativ jemanden von EMBT kontaktieren, der das Problem weiter trägt oder direkt den Verursacher kontaktieren. Ansonsten sind wir evtl. noch in 10 Jahren dazu gezwungen den Workaround zu benutzen der derzeit wo dokumentiert ist? Richtig, m.W. nur in diesem Delphipraxis.net Thread... Oder sehe ich da was falsch und wir sollen unsere Software mit Workarounds zupflastern? ;-) Grüße TurboMagic |
AW: NAN Error nach Windows Update
[QUOTE=TurboMagic;1450749][QUOTE=Der schöne Günther;1450724]
Zitat:
Solange sich nicht alle daran halten die FPU-Flags wieder zurückzusezen nach einer Änderung, kommt man nicht darum herum genau das zu machen. Ist nicht schön, aber.... Noch schlimmer ist, das die Flags auch in Threads geändert werden können. Habe gerade bei uns mal geschaut, Wir haben über 1000 Calls zu reset FPU..... (Bin im CAD-CNC) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz