Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

64-bit niimaqdx.lib?

Solved!
Go to solution
Is a 64-bit version of niimaqdx (aka imaqdx / imaq-dx / NI-IMAQdx) available? The compatibility matrix says yes but I am not seeing the files.

 

Specifically, I only see the 32-bit version of niimaqdx.lib in both the March 2010 and November 2009 releases. Did I need to check something additional upon install, or?

 

Any help would be appreciated!

0 Kudos
Message 1 of 10
(5,149 Views)

Should have mentioned some context: I'm porting a whole slew of not-my-code to Windows 7 64-bit and linker is failing on this one.

 

Smiley Wink 

0 Kudos
Message 2 of 10
(5,144 Views)

Hi gatanui,

 

Note that support for a 64-bit OS and support for running in a 64-bit process is quite different. The table you linked to refers to the compatibility with the various OSes (32-bit vs 64-bit) not necessarily whether those components provide 64-bit application DLLs. With pretty much all NI hardware/software you can still develop 32-bit apps from within a 64-bit OS and run them just fine.

 

Currently we do not have support for IMAQdx from our C API in a 64-bit process. It is only supported in LabVIEW under 64-bit. Because of this lack of official support, their is no niimaqdx.lib import library available in 64-bit. IMAQdx actually does have all the C entrypoints exported on its 64-bit build but the reason we do not officially support it is because IMAQdx's API relies heavily on NI Vision (GetImage returns a Vision image datatype) and NI Vision does not currently export any C entrypoints in 64-bit currently (only LabVIEW). So IMAQdx's API is pretty useless on 64-bit C until Vision is supported. It is also important to note that no Vision Development Module functions are currently available via a 64-bit C API (again, only LabVIEW). What API functions are you expecting to use via the C API? Do you just need to get image data as an array? Depending on what you need you might be able bind to the functions directly...

 

Eric

Message Edited by BlueCheese on 06-15-2010 03:11 PM
0 Kudos
Message 3 of 10
(5,137 Views)

Thanks for the explanation, Eric.

 

My unresolved externals list is IMAQdxEnumerateCameras, IMAQdxEnumerateAttributes2, IMAQdxGetAttribute, IMAQdxSetAttribute, IMAQdxGetAttributeMinimum, IMAQdxGetAttributeMaximum, IMAQdxOpenCamera, IMAQdxResetCamera, IMAQdxCloseCamera, IMAQdxGetErrorString, IMAQdxConfigureAcquisition, IMAQdxUnconfigureAcquisition, IMAQdxStopAcquisition, IMAQdxStartAcquisition, and IMAQdxGetImageData so I don't think I'll be able to squeak by... ?

 

Is there a date scheduled for the 64-bit C API release of NI Vision (and thus the corresponding IMAQDX)?

Message Edited by gatanui on 06-15-2010 03:25 PM
0 Kudos
Message 4 of 10
(5,132 Views)
Solution
Accepted by gatanui

Hi gatanui,

 

There is currently no date set for a 64-bit C API for NI Vision and IMAQdx. Part of it depends on customer feedback of course. Now that NI's CVI compiler also supports 64-bit, there might be some more push for these to have 64-bit APIs available. 

 

However, since you are just using IAMQdxGetImageData (which returns raw, non-decoded image data as an array) you should not need the NI Vision API functions and so I imagine you could use IMAQdx's 64-bit C API functions without Vision. You have two options for this:

a) Use LoadLibrary() and GetProcAddress() to dynamically bind to the DLL functions you use

b) I am providing you an unsupported 64-bit import library for use with MSVC (not CVI). This is for IMAQdx 3.6.0.

 

Note that since these functions are not supported currently I cannot say with certainty that you will not run into problems, but there are no reasons I know of that they should not work.

 

Eric 

Message 5 of 10
(5,120 Views)

Eric, awesome. This library gets me linking and that was my goal for last week. Smiley Wink

 

It's unknown when all this will be tested but if there are problems with this lib we can always switch to the dynamic approach (if 64-bit C API is still not available, that is).

 

Thanks!

 

Smiley Happy 

0 Kudos
Message 6 of 10
(5,115 Views)

Would it be possible to provide a 64bit nivision.lib as well?

0 Kudos
Message 7 of 10
(4,457 Views)

The 64-bit import lib for nivision.lib will be useless for you because as I mentioned, no C entrypoints are exported from it. It only has LabVIEW support currently.


Eric

0 Kudos
Message 8 of 10
(4,453 Views)

Hello,

 

Could you provide some estimate of when you might have a 64 bit version?  We are utilizing the vision module in our labwindows code, and currently it is the only piece holding us back from running as 64 bit.  We are starting to evaluate alternative solutions, and at some point will have to move away from the NI vision solution (we really need to take advantage of the 64bit memory space).

 

Thanks,

 

Alex Corwin

0 Kudos
Message 9 of 10
(4,435 Views)

@adcor wrote:

Hello,

 

Could you provide some estimate of when you might have a 64 bit version?  We are utilizing the vision module in our labwindows code, and currently it is the only piece holding us back from running as 64 bit.  We are starting to evaluate alternative solutions, and at some point will have to move away from the NI vision solution (we really need to take advantage of the 64bit memory space).

 

Thanks,

 

Alex Corwin


Hi Alex,

 

I understand your frustration and have wanted to see this for a while as well... I suggest bringing this feature up with your local salesperson as well so they can escalate your request as well. I cannot give any estimate on when such a version might be available as we are constantly evaluating features with every release.

 

Eric

0 Kudos
Message 10 of 10
(4,433 Views)