Multifunction DAQ

Showing results for 
Search instead for 
Did you mean: 

Borland C++ 4.52 vs. NI-DAQ 5.0.5 on Windows 3.1

I just installed NI-DAQ 5.0.5 on a 386 running Windows 3.1. I'm hoping to get a bit more speed out of a 5+ year old application as well as take advantage of any bug fixes. Previously I had 4.6.1 installed. I'm using Borland C++ V4.52.

I've had nothing but problems:
1. NI-PNP produces a list of three items even though I have only two boards, an MIO-16E and a PC-TIO-10. The MIO-16E is listed twice, once as a board and once as "Logical Device #1".

2. My application, which I've done with EasyWin, crashes Windows hard when recompiled and relinked against the new version. In fact, it crashes before it even runs; I have a breakpoint set at the first executable line of main(), and it never gets th
ere. All I changed was the #include of "wdaq-bc.h" to "nidaq.h", and the link library from "\nidaqwin\lib\nidaq.lib" to "\nidaqwin\lib\nidaqbc.lib". I also had to change some casts; for example, under 4.6.1 I had to cast a "short *" buffer to "int far *" in DAQ_Start(). This cast was eliminated.

3. I can't get the Borland examples to compile at all. The main problem is that the link line in the batch file exceeds 128 characters and so gets truncated by COMMAND.COM. How did anyone at NI ever get this to work?

Thanks for listening. And thanks to the MKS Toolkit, which allowed me to make a complete cpio backup of my system on an Exabyte tape from which I restored when the new setup didn't work!
0 Kudos
Message 1 of 3

Before installing a new version of NI-DAQ, you want to make sure the previous version is completely uninstalled. I suspect that is the problem you are running into. There are some KnowledgeBase entries that may help. When you search the pages for "uninstall ni-daq for windows 3.1", you will find KnowledgeBase 0JC92JOQ "How Do I Uninstall NI-DAQ 4.8.5 for Windows 3.x?" which discusses changes you need to make for the registry. You will also find KnowledgeBase 1EEFQLLL "How to Install DAQ Boards under Windows 3.1".

As far as seeing the E series board as two devices, this is because each PnP logical device has a limit of 2 DMA channels, according to the PnP specs. Since E-series boards have 3 DMA channels, a second logical
device shows up at bootup. This is a limitation on the part of the PnP specs, and it really has no effect on the user or configuration.

Geneva L.
Applications Engineer
National Instruments
0 Kudos
Message 2 of 3
Thanks for your feedback, Geneva. I have re-installed the software per your suggestions after removing the old via the referenced support document. I found I had to remove \win\wdaqconf.* in order to complete the installation.

I have finally tracked down the problem I was having with my software: if I run a NI-DAQ program from within Borland C++ 4.52's IDE using the Debug->Run menu item, I get a 'Processor fault' pointing at NICFQ386.DLL. This doesn't happen if the same executable is run from Window 3.1's File->Run menu item. The problem is easily reproduced: create a new EasyWin Project for the AI1PT.C example in \NIDAQWIN\EXAMPLES\BORLANDC\AI and try building and running it from the Debug->Run menu item.

Any idea if Borland C 5.x fixes th
is problem? Thanks.
0 Kudos
Message 3 of 3