Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

Running 16bit app on Win 95

I have a 16 bit application loaded on windows 95. I need to intercept gpib commands to convert the data strings (sent in an ibwrt) and I do not have access to the source code of the 16 bit application. I have successfully made a mask of the gpib-32.dll that intercepts commands using IBIC for win 95 and I forward them on to the 'REAL' gpib-32.dll. However, when I try this same scheme with the 16 bit app I have the following problem: GPIB.DLL loads GPIB32FT.DLL which successfully loads my gpib-32.dll. But when a function call is made, such as an ibfind (which is really routed through the GPIB.DLL function ROUTE_IBFIND( )) it never makes it past the GPIB32FT.DLL to mine. This app works properly with the original NI GPIB-32.DLL placed in t
he Windows/system folder. My question: When a 16-bit command for IBFIND is passed through GPIB.DLL and then onto GPIB32FT.DLL, what function does GPIB32FT.DLL use from gpib-32.dll to pass this on?

http://zone.ni.com/devzone/conceptd.nsf/webmain/0BB66DAB3253244E86256804006A96BA?opendocument&node=1284_US#3
0 Kudos
Message 1 of 2
(3,050 Views)
The gpib-32.dll exports pointers to the global status variables, so there are certain things you must do for the ibfind function as well as the status variables. These are described in the Readme.txt in the following directory, which appears with the default installation of NI-488.2:
C:\Program Files\National Instruments\NI-488.2\Languages\DLL Direct Entry\Devquery

The main section that relates to your situation is the "Creating Your Own Direct Entry NI-488.2 Application".

Regards,
Geneva L.
GPIB/Serial Product Support Engineer
National Instruments
http://www.ni.com/support
0 Kudos
Message 2 of 2
(3,050 Views)