Windows 8: apparent incompatibility with xnmba458.dll

I have written (and placed in the public domain) software to record and analyze observational data (described at http://faculty.tru.ca/wlroberts/index.html#focal and available for download at https://sourceforge.net/projects/behavioraldata/files/ ). I recently recevied an error report from a user trying to run the bound program on Windows 8. The error occurs when the user is leaving a call to TD_InputM, and apparently involves xnmba458.dll. Here is the Windows error message:

Problem signature:

Problem Event Name: APPCRASH

Application Name: FOCAL32.EXE

Application Version: 0.0.0.0

Application Timestamp: 38725130

Fault Module Name: xnmba458.dll

Fault Module Version: 4.55.0.0

Fault Module Timestamp: 34450277

Exception Code: c0000005

Exception Offset: 000153eb

OS Version: 6.2.9200.2.0.0.256.4

Locale ID: 1033

Additional Information 1: 8f11

Additional Information 2: 8f11949aefbd23d47977d6030bc28136

Additional Information 3: 6bfa

Additional Information 4: 6bfa397787c2e756c235234708e6cf11

There are no True Basic error messages.

The program (Focal32.exe) runs fine on Windows XP, Vista, and 7, so the problem appears to be specific to Windows 8. Since I don't have Windows 8 myself, I can't reproduce the problem. The user tells me that the Windows 8 Compatibility settings don't help.

I have sent the user a copy of the program bound using version 5.5 -- but of course that introduces other bugs (which is why I bind under version 5.32).

I can send the source code if you like, but the program is 1,890 lines, not counting two custom libraries. I can scarely understand it myself now.

I would be grateful for any suggestions.

Thanks,

Bill Roberts
wlroberts@tru.ca

Comments

Windows 8 and the .dlls

Thanks, Rick; that's definately helpful.

I'll look again into binding with 5.5.

Best regards,

Bill Roberts

re: dll incompatibility

I downloaded and ran Focal under Windows 8 (although I just made up some input) and did not get a crash. Didn't read the manual to input meaningful data, but entered codes, switched mode, did a save and exit without problems. So..problem may not really be with Windows 8 but something your user did.

OTOH, I would STRONGLY advise binding programs under system 5.5b19 unless you have specific issues (without work-arounds). I have an extensive library of programs and have had no problems (and lots of benefits) binding the programs with the newer system. The problems with 5.5, to my knowledge, lie largely with the editor (and therefore maybe with some text functions) and have plagued Big John in his writing of the Version 6 Editor. I've not had any problems with the several hundred thousand lines of code in my programs.

It would not surprise me at all if eventually the .dll files run into problems with new Windows versions. Besides a few new (and important) graphics functions (at the pixel level), the BIG advantages of the 5.5x system is NOT needing the .dlls and (very importantly) being able to handle 256 character path names whereas the pre-5.5 versions had a 128 character limit. This latter can quickly effect your programs on modern systems where even desktop installations can acquire long path names in a hurry.

If this is really a problem in Windows 8, I would try setting the compatibility directly on the .dll file, not just the executable.

rwt