Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

NI-IMAQ IO unresolved imaqIOChangeDetectConfigure

Hello everyone.

 

Currently I'm working with a PCIe-8255R card and the IMAQ IO driver Visual C API (2014.02 version of the NI Vision Acquisition Software). I'm using Visual Studio 2010 under Windows 7 Professional 32 bits.

 

I've successfully built and deployed some examples that interact with the digital I/O of the card using functions such as imaqIORead or imaqIODrive.

 

I'd like to use the functions imaqIOChangeDetectConfigureimaqIOChangeDetectQuery and imaqIOChangeDetectReset to detect signal state changes on some pins of the card.

 

The problem I'm facing right now is that the IMAQ IO DLL does not seem to export the imaqIOChangeDetectConfigure function. The Visual C++ compiler throws the following error:

 

NICard.obj : error LNK2001: unresolved external symbol __imp__imaqIOChangeDetectConfigure@20

 I've inspected the DLL with the dumpbin utility and have confirmed the fact that the function is not exported even though it appears in the header (.h) file:

 

C:\Program Files\National Instruments\Shared\ExternalCompilerSupport\C\Lib32\MSVC>dumpbin /exports imaqio.lib
Microsoft (R) COFF/PE Dumper Version 10.00.40219.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file imaqio.lib

File Type: LIBRARY

     Exports

       ordinal    name

                  _ImaqRioChangeDetectConfigure
                  _LVDLLStatus
                  _imaqIOChangeDetectQuery@16
                  _imaqIOChangeDetectReset@12
                  _imaqIOClose@4
                  _imaqIODrive@16
                  _imaqIOEnableShutdown@8
                  _imaqIOGetAttribute@12
                  _imaqIOGetErrorText@12
                  _imaqIOGetErrorTextVB@8
                  _imaqIOGetShutdownState@16
                  _imaqIOOpen@8
                  _imaqIOPulseCreate@52
                  _imaqIOPulseDispose@8
                  _imaqIOPulseStart@8
                  _imaqIOPulseStop@8
                  _imaqIOQueryShutdown@8
                  _imaqIORead@16
                  _imaqIOSetAttribute@12
                  _imaqIOSetShutdownState@16
                  _imaqIOWatchdogArm@4
                  _imaqIOWatchdogClear@4
                  _imaqIOWatchdogConfigure@12
                  _imaqIOWatchdogWhack@4

  Summary

          14 .idata$2
          14 .idata$3
          64 .idata$4
          64 .idata$5
         20B .idata$6
          90 .text

The library actually exports a function named ImaqRioChangeDetectConfigure that receives no parameters, but such function does not appear anywhere within the documentation or the examples.

 

Is there something I'm missing? has anyone faced this problem before?

 

Thanks in advance 🙂

0 Kudos
Message 1 of 1
(4,879 Views)