AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Ungültige Gleitkommaoperation nur bei bestimmten PC's
Thema durchsuchen
Ansicht
Themen-Optionen

Ungültige Gleitkommaoperation nur bei bestimmten PC's

Ein Thema von HCB · begonnen am 19. Dez 2023 · letzter Beitrag vom 22. Dez 2023
Antwort Antwort
Seite 1 von 2  1 2      
HCB

Registriert seit: 12. Feb 2020
226 Beiträge
 
Delphi 12 Athens
 
#1

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 08:49
Es werden keine zusätzlichen DLLs verwendet, das Programm läuft allein nur mit der exe und einer .ini File.
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.375 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 09:58
Ich verstehe nicht, warum du den Fehler an Stellen suchst, die die Fehlermeldung nicht verursachen können.
Deine ersten Vermutungen haben schon gezeigt, dass dort nur Convert-Fehler oder SQL-Fehler entstehen können. Beim GetTickCount hättest du nur einen Überlauf-Fehler bekommen können.
Du sucht an Stellen, wo mit Cardinal und Integer gearbeitet wird. Die Wahrscheinlichkeit, dass dort der Fehler ist, tendiert gegen 0.

Schau dir den Source an den Stellen an, wo mit Double, Extended o.ä. gearbeitet wird.
Peter
  Mit Zitat antworten Zitat
Kas Ob.

Registriert seit: 3. Sep 2023
466 Beiträge
 
#3

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 10:11
Hi,

Also I think you are looking for this in the wrong place, i suspect something different and has to do with memory allocation, like using broken FastMove, or something else.

I suggest to build the EXE with RTL debug dcu, only then you might get closer or finer look where the exception is raised, this exception is hardware one and should be easier to catch and locate as it is limited to illegal operation.
Kas
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
2.061 Beiträge
 
Delphi 12 Athens
 
#4

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 10:34
Logge alle inputs beim Kunden.
Wenn du weist bei welche inputs der Fehler passiert, hole dir die Kundendatenbank und alle Einstelldateien auf deinen Rechner.
Stelle den input der zu dem problem führt nach.
Andreas
Nobody goes there anymore. It's too crowded!
  Mit Zitat antworten Zitat
hannsg

Registriert seit: 8. Sep 2014
Ort: 61169 Friedberg
12 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 11:10
Hallo!

Ich möchte noch anmerken, dass StrToInt nicht nur Zahlen im Dezimalformat erkennt, sondern bspw. auch Hex-Zahlen, also z.B. $fe oder 0xff.

D.h. dann wird beim StrToInt() keine Exception ausgelöst... aber vielleicht später im Code?

Gruß, Meik
Meik
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.251 Beiträge
 
Delphi 12 Athens
 
#6

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 11:36
Das allererste Ziel muss sein, die exakte Zeile zu finden, wo der Fehler auftritt. Dazu kannst du zB vor jede Zeile in der vermuteten Umgebung eine Logging Ausgabe (siehe andere Posts dazu) einbauen. Bzw beim Eintritt und Austritt aus Methoden, dann hast billig den Aufrufbaum.

Ich hatte das mit dem FPU Control Word auch mnal, da war es ein Druckertreiber, der das geändert, aber nicht zurückgesetzt hat. Je nachdem, ob wer was gedruckt hatte oder nicht, kam der Fehler (bzw in dem fall kam eben KEINE Exception, obwohl erwartet).

Zweites Ziel muss sein, zu klkären, ob du das verlässlich reproduzieren kannst. Anhand von daten bzw anhand von Abfolgen. Und zwar in allen Kombinationen - Fehler ja/nein vs Rechner A und B.
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
2.061 Beiträge
 
Delphi 12 Athens
 
#7

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 21. Dez 2023, 11:54
Ich wette der Fehler kommt aus Firebird.
Firebird liefert z.b. "ungültige Gleitkomma Operation", wenn man Strings einfügt die Länger als das Feld sind.
Deswegen jede Zeile loggen damit man weiß wo der Fehler passiert.
Andreas
Nobody goes there anymore. It's too crowded!
  Mit Zitat antworten Zitat
HCB

Registriert seit: 12. Feb 2020
226 Beiträge
 
Delphi 12 Athens
 
#8

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 22. Dez 2023, 09:10
Guten Morgen, liebe Leute

nun sieht es so aus, dass ich den Verursacher der Fehlermeldung gefunden habe:

frm_Main.edt_Marge.Text:= Format('%3f',[DataMod.Q_sArtikelmarge1.AsFloat/DataMod.Q_sArtikelArtEKQuer.AsFloat*100]);
Dies war im OnDataChange Ereignis im Datenmodul. Wenn der Datensatz gewechselt wurde sollte die Marge neu berechnet werden. Dieser Wechsel findet auch statt,
wenn ein Produkt gesucht wird - aber nichts gefunden wurde. Wie im beschriebenen Fall. Da wurde trotzdem versucht die Marge zu berechnen obwohl kein EKPreis vorhanden.
Das wäre nun dank Euerer intensiven Hilfe geklärt. Ich habe aber tatsächlich immer an der falschen Stelle gesucht. VIELEN HERZLICHEN DANK.

Warum die Exception aber nur auf manchen Rechnern ausgelöst wurde, bleibt aber weiterhin ungeklärt

LG Harry
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.078 Beiträge
 
Delphi 12 Athens
 
#9

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 22. Dez 2023, 10:10
Da lag ich mit dem IsZero aus der ersten Antwort ja gar nicht so falsch, nur dass die Prüfung nicht falsch, sondern nicht vorhanden war.

Warum die Exception aber nur auf manchen Rechnern ausgelöst wurde, bleibt aber weiterhin ungeklärt
Das kann durchaus am FPU control word liegen.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
HCB

Registriert seit: 12. Feb 2020
226 Beiträge
 
Delphi 12 Athens
 
#10

AW: Ungültige Gleitkommaoperation nur bei bestimmten PC's

  Alt 22. Dez 2023, 10:23
> Das kann durchaus am FPU control word liegen. <

Was bedeutet das??
Liegt es an der Hardware oder Windows Einstellungen auf den Rechnern wo es nicht läuft bzw. dass es der Fehler nicht auftritt?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:39 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-2025 by Thomas Breitkreuz