I have written a program in C++ which utilizes NI-VXI for the VXIpc-486 Model 500 controller Release Version 1.4
My program is being compiled in Borland C++ version 3.1 and calls on the functions WSrd and WSwrt as well as a few other word serial protocol functions and so I have #included both nivxi.h and ws.h and given it the path to the directory containing nivxidos.lib
The program compiled with no errors and appeared to run in the debugger but when I ran the executable I got this:
"This application has violated system integrity due to execution of an invalid instruction and will be terminated."
Returning to Borland I stepped through the program and found that the line, ret = InitVXIlibrary(); was causing the problem. The program would run up to this point but would exit upon executing this command. I tried placing a watch on ret but the function didn't even return anything, it just quits. ret is defined as an int16.
The pc is holding only 7424 K RAM and is operating in Windows 3.1 on top of DOS 6.22
Let me check into this a bit for you. I don't know how much information we'll be able to dig up on such an old system, but let me check and see what we can find. You don't happen to have any kind of NI-SPY software that you could use on your system to catch your function calls, do you?
Could you tell me more about your setup? Has it worked before? If so, what has changed? If this is a new setup, have you looked for example code to work from? The latest versions of NI-VXI ship with several C examples, but I'm not sure about the older versions. Have you tried simplifying your code to verify that NI-VXI has been installed successfully? Just a few questions, but hopefully they help us get this working.
Well, your method looks good as far as I can tell. Let's go back to your original post - you said you have a "VXIpc-486 Model 500 controller Release Version 1.4". Do you have a part number off that controller? something like 18####x-01? Also, has this set up to worked before? If so what has changed? Have you tried downloading the driver off NI's website and starting with a fresh copy? It could simply be there is some corruption in the file that you are accessing.