LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Is a converted LabWindows project standalone? Or will I still need LabWindows?

Solved!
Go to solution

I have inherited a project that was built using LabWindows.  As far as I know, this project uses nothing specific to National Instruments.  It's just that the developer was familiar with LabWindows, so he used it to build the app.  (The "If all you have is a hammer, everything looks like a nail" syndrome).

 

I successfully ran the LabWindows conversion wizard to turn it into a Visual Studio 2010 project.  Then, I migrated that project to Visual Studio 2015 and all seems to work.

 

My question is this: When my evaluation period with the NI software expires, will I still be able to do development work on the app?  (In other words, does a converted project still rely on libraries/headers/etc. from NI?)

 

Follow-up: What's the safest way to divorce a project completely from the NI environment?

 

Thanks.

 

0 Kudos
Message 1 of 7
(2,981 Views)
Solution
Accepted by topic author JimSeymour

Hi Jim,

 

Do you get any errors related to the activation status or indicating that components are in evaluation mode? As far as I know, CVI activation only applies to the actual CVI environment. Components from CVI shouldn't require an NI license. 

 

Regarding the safest way to migrate, it sounds like your process worked well and I haven't heard of a better way.

Austin
Staff Software Engineer
NI
0 Kudos
Message 2 of 7
(2,935 Views)

My NI trial license has now expired and (as expected) I see no issues with building and running my project in Visual Studio 2015.

Thanks!

 

0 Kudos
Message 3 of 7
(2,895 Views)

I may have spoken too soon.  It turns out my project uses a couple of "User Interface" files.  If I try to edit them, it launches the NI software.

Can someone help me determine if these files are specific to NI?  If so, can they be converted to some other format that Visual Studio can manage?

Thanks.

 

0 Kudos
Message 4 of 7
(2,892 Views)

Hi Jim,

 

Unfortunately UIR files are specific to CVI and require CVI to edit them. As you've noticed, converting a project to VS does not break the dependency due to the UIR file. This is detailed in the help document I've linked below:

 

Converting a LabWindows/CVI Project to a Visual C++ Project
http://zone.ni.com/reference/en-XX/help/370051V-01/cvi/usermanual/vsconvertcvitocppproj/

 

Even after the project has moved to Visual Studio, the UIR file can only be edited in CVI and as such launches CVI when you try to edit it. The UIR still does what it did in CVI, so you can work in the functions that relate to the user interface events, but you can't edit the UIR.

Austin
Staff Software Engineer
NI
0 Kudos
Message 5 of 7
(2,878 Views)

I found the following article today: "Tools»UI to Code Converter"

http://zone.ni.com/reference/en-XX/help/370051P-01/cvi/usermanual/prjuitocodeconverter/

 

 

Am I reading this page right that this would allow me to convert my .uir files into pure code?

 

If so, would that break the dependency on the NI tools?  And if so, how does the generated code deal with images from the .uir file?

 

0 Kudos
Message 6 of 7
(2,851 Views)

You are right that the UI to Code Converter converts your panels and controls created into the UIR editor in a series of instructions: this permits to avoid distributing the .UIR file since all the user interface is created programmatically at runtime. But it does not free you from NI dependency.

I may be wrong, but it seems to me that as far as you keep relying on NI's mechanism for handling control events (and still call InitCVIRTE and StartUserInterface) you are dependent on the CVI RunTime Engine which must be installed on the target machine. The same probably applies for the command list produced by the UI to code converter.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Message 7 of 7
(2,844 Views)