[JoE] schrieb:
Ich schreibe eine Sandboxapplication, welche Winapifunktion unterbricht. Um nicht für jede Funktion einen eigenen Loghandler zu schreiben, was eine Unmenge an Arbeit bedeuten würde, habe ich dynamische Funktionen implementeriert. Jedoch mit dem Preis, dass ich die Länge von Pointern nicht mehr zu den jeweiligen Pointern zuweisen kann.
Ich weiss, dass IsBadReadPtr nicht zuverlässig funktioniert. Deshalb habe ich das Exceptionhandling verwendet.
MfG Joe
Dann probiers mit __try + __catch statt try + catch
Damit kannst du (wenn du mit support für asynchrone exceptions compilierst) Dinge wie access violations schön fangen.
Beispiele sollten in der MSDN zu hauf zu finden sein. Ahja, du kannst __try nicht mit try innerhalb der selben Funktion mischen, allerdings ohne Probleme innerhalb des selben Programms/Callstacks -- notfalls also einfach eine Funktion in 2 teilen wenn du beides brauchst.