11-14-2005 08:13 AM
11-15-2005 05:34 PM
Hello,
I'm not too sure about that specific driver -- on our website
(www.ni.com/drivers) I am finding drivers certified for CVI 6. Maybe
something changed from version 5 to 6 with this driver. Feel free to let
us know if this solves the problem.
Regards,
11-15-2005 08:01 PM
11-16-2005 01:09 PM
11-17-2005 11:50 AM
Hello!
One thing to check is that you are using the c calling convention in the DLL
you are creating. In CVI choose "Options->Build Options" and
change the Default Calling convention to __cdecl. This will probably
clear up your first error, which may clear up the other.
As always, feel free to let us know the outcome of this!
11-17-2005 07:40 PM
11-18-2005 02:21 PM
Hello,
I do not think that the function is multiply defined in the 6.0 instr
driver. I noticed that it is #define(d) in 2 locations -- i.e. if you
examine the ri1260.h file, and search for that function, you will find it referenced
in a few places -- 1 is in a comment, 2 are in these statements:
#define rd1260_50_1_operate_single rd1260_50_operate_single
#define rd1260_50_2_operate_single rd1260_50_operate_single
and only once as a function declaration. I was able to load the
instrument driver, call one of the functions and return without link
errors.
I suspect that there might be a problem with how the driver
was loaded into the CVI platform. The driver should be an out of the box
solution -- I agree that it is desirable to have such a driver. I recommend
that you examine your system and make sure that you do not have the driver
loaded in multiple places or have multiple versions of the driver loaded
in the project. You may want to start with a completely new project, and
load the instrument driver (in CVI select Instrument... and first unload all
instruments, then load the 1260 driver. Then create a basic c file to reference
one of the functions so that it actually gets linked by the compiler.
Hopefully this helps! Have a great weekend, and please let us know how things
go.
11-18-2005 04:42 PM