Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

How to avoid licence error msg in app linked to the IMAQ DLLs but not using them?

We have an application that runs on a production test system using a NI-IMAQ Measurement Studio for Visual C++. The application is licensed on this tester using runtime licenses purchased from NI.

We have a problem in that we wish to use the same application on a diagnostic tester which has no image acquisition hardware. When used on this platform, the software does no image processing and hence does not access the IMAQ DLLs. Despite that we are not using the IMAQ software in this installation, we still get the licensing pop-up, forced, we believe, by the following pragma in nivision.h forcing a load to the DLL.

#pragma comment(linker, "/INCLUDE:_nivision_startup_shutdown")

You will
appreciate that we do not wish to purchase runtime licences for testers that have no image acquisition and where no image processing is performed. Equally, we wish to distribute to our manufacturing partners a single executable that they can use on all the test platforms.

How can we achieve this?

Software Details: Measurement Studio for Visual C++ version 6.0
0 Kudos
Message 1 of 4
(3,166 Views)
Hello DeepRed,

It's Pete from NIUK Tech support department here. Thank you for your question. I have been looking into this matter for you and unfortunetly I don't have good news.

If you want to compile the program into a single executable with all the dll's in there then you have to buy the corresponding license's.

If you do not wish to buy the license then I'm afraid you will have to compile a separate executable without the dll's included.

Sorry to be the bearer of bad news, but there is no other way round this.

Best regards,

Peter H.
Applications Engineer.
National Instruments.
0 Kudos
Message 2 of 4
(3,166 Views)
You can get around this in LabVIEW by dynamically loading the vision portion of your software. If you never load it, it will never look for the vision license. I suspect you could do the same in VC++. You would probably have to create a dll or something for the part of your program that contains the vision code.

Bruce
Bruce Ammons
Ammons Engineering
0 Kudos
Message 3 of 4
(3,166 Views)
Thanks Bruce, we figured that's where we might end up - making sure the DLLs load on demand only, which will mean busting my machine vision component out into DLL(s) and having them load on demand only.
I was hoping there'd be a more friendly way of doing it!
Thanks anyway.
0 Kudos
Message 4 of 4
(3,166 Views)