سؤال

I am seeing the return of the _controlfp_s unsigned int showing that the 32nd bit is being set (thought only 16 bits used) for some ODBC work?

Anybody any ideas what this means?

Normally we only see either 0x0008001F (64 bit) or 0x0009001F (32 bit) but on some occasions it would appear that 3rd party drivers or DLLs are setting this to 0x8009001F!!!!

We have noticed random closing of our application when the 3rd party software does this on occasions.

controlWord 10000000000010010000000000011111,

switchOffExceptions32bit 10010000000000011111, switchOffExceptions64bit 10000000000000011111

هل كانت مفيدة؟

المحلول

I have the same Problem using 3rd Party DLLs from Java over JNA (JNI). There is well known issue described here http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4644270 and some useful hints for this theme here http://blogs.msdn.com/b/dougste/archive/2008/11/12/random-and-unexpected-exception-flt-divide-by-zero-and-exception-flt-invalid-operation.aspx

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top