Hallo,
ich habe für die Demonstration der Benutzung der fehlerhaften Routine
MP_Real.mpf_tohex_n(...)
ein kleines Konsolen-Testprogramm MPF_ToHex_n_1.dpr erstellt. Hier befindet sich zur Kontrolle auch eine eigene Funktion Dezimal_To_Hex(...), die Multipräzisions-Fließkommazahlen beliebiger Stellenzahl korrekt in einen Hexadezimal-String umrechnet.
Im Programm ist die Stelle markiert, wo ein "
Access violation" auftritt.
Wegen des komplexen Zusammenspiels zahlreicher Units und *.inc habe ich auch noch
11 weitere benötigte Original-Files von Gammatester beigefügt. Sollten evtl. weitere Files fehlen, diese sind zu finden unter:
https://github.com/moe123/www.wolfgang-ehrhardt.de
Obwohl meine Function Dezimal_To_Hex(...) die Routine
MP_Real.mpf_tohex_n(...)
ersetzt, wäre ich an der Lösung des Problems trotzdem sehr interessiert, da die fehlerverursachende innere Procedure
s_mpf_toradix_n(...)
in Gammatester’s Bibliotheken an zahlreichen weiteren Stellen intern verwendet wird.
Danke für Eure Hilfe und kritischen Bemerkungen!
Gruß, Andreas
PS: Zielplattform: Win 32 Bit
Anhang: MPF_ToHex_n - 1.zip