Das grundlegende Problem scheint gelöst. Es lag an den PChars, für die ich explizit Speicher mit StrAlloc() reservieren musste. Die Inhalte habe ich dann via StrPCopy() reinkopiert. Da ich keine Ahnung / Dokumentation habe, wie groß die zu erwartenden Werte sind, habe ich pauschal 1 KB pro PChar reserviert. Das scheint zu langen.
Wieso löst sich so ein Knoten eigentlich immer genau dann, wenn man gerade beim Kunden einen Auftrag an dessen IT-Abteilung rausgegeben hat? *seufz*
Im Moment scheinen die verbleibenden Probleme bei der Bestückung der Strukturen zu liegen. Ich erhielt schon brauchbare Fehlercodes aus dem dritten Parameter. Die gelieferten Fehlernummern stimmten mit den Ursachen überein. Bisschen holperig ist's noch, ich erhalte jetzt aber keine Schutzverletzungen mehr, sondern nur noch eine EDivisionByZero aus dem Tarifrechner selbst. Ich denke und hoffe, das rührt bloß daher, dass ich nicht alle benötigten Felder mit sinnvollen Werten belegt habe. Das zum Thema Prüfung der Plausibilitäten.
@Heiko: Dass ich für die PChars den Speicher separat zu reservieren habe, schrieb ich doch schon.
Daniel R. Wolf
mit Grüßen aus Hamburg