I have an IVI driver build with Nimbus tool. The IVI driver is an IVI-COM driver with an IVI-C wrapper on top of IVI-COM. After installation the driver install .fp,.h, .dll files under IVI Foundations Drivers folder. I run the Import Wizard Too and this creates LabVIEW wrappers of IVI-C interface under instr.lib folder of LabVIEW 2012. The Import Wizard Tool version is 2.2 and is part of LabVIEW 2012 => Tools => Instrumentation => Import LabWindows/CVI Instrument Driver.
All IVI driver basic functions are converted OK with few VI exceptions.
The conversion tool spit out a report in html format that shows that IVI basic functions "Init", "Init With Options", "Close" and 2 other functions fail to convert these VIs.
The conversion report gives few possible reasons for this failure .
Driver VI Not Executable
The following instrument driver VI(s) are not executable. This might indicate one of the following issues:
(a) There is a problem with the instrument driver DLL, or the function is not exported by the DLL.
(b) All necessary support files or DLLs are not found.
(c) The first parameter of the function is not a Driver Handle.
(d) The LabVIEW Call Library Node is not correctly linked to the appropriate function in the DLL.
(e) The function is not consistent with VXIpnp and IVI specifications.
Open and review each of these VI(s) for errors.
Some non-executable VIs can be removed from the LabVIEW interface. Consider the relevance of the VI to the LabVIEW user and determine if you can safely remove the VI from the API.
viMAP200 TFX Initialize With Options.vi
viMAP200 TFX Initialize.vi
viMAP200 TFX Close.vi
viMAP200 TFX Get Next Coercion Record.vi
viMAP200 TFX Get Next Interchange Warning.vi
In my case the error in these VI seems to be the error explained at point d) above
If I open these failed VI I may see that they use a generic function that is not the IVI driver expected function. The generic function that these failed VI connect to has nothing to do with the underlying IVI functions but connect to a generic function called "funcName" with the prototype shown below.
int32_t funcName(uint32_t instrument handle, int32_t measurement function, double range, double resolution (absolute));
Did anyone had this kind of experience with Import LanWindows/CVI Import tool in failing to get conversion of IVI-C funnctions Init, Init With Options and Close functions into valid VIs?