LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Force runtime engine version for an app

A hardware vendor supplied us with a UI application built in LabVIEW 2017. It worked fine until we installed LabVIEW 2020 development system on our PCs, after which the app hangs up mid-way on startup. We confirmed that cause of the problem is the the update to LV 2020. We would like to be able to run the app alongside our own LV 2020 code.

 

I tried installing the specific runtime 2017 version beside LV 2020 development system, but that did not fix the problem. The app in question was built with the option to allow it to run with future versions of runtime engine. 

 

Is there a way to force the app to run with the particular version of the runtime engine, e.g. 2017 in this case?

 

 

0 Kudos
Message 1 of 8
(2,843 Views)

The problem is that the LV 2020 runtime will make all your executables try to use it.  I think this "feature" where everything tries to run with the latest runtime was introduced in LV 2017, so you will still have a shot at fixing this.  You will have to rebuild your executable with "Allow future versions of the LabVIEW runtime to run this application" unchecked.

billko_0-1603841467293.png

 

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 2 of 8
(2,832 Views)

billko,

 

Unfortunately, it is not our executable. The executable was provided by the vendor. 

0 Kudos
Message 3 of 8
(2,826 Views)

@billko wrote:

You will have to rebuild your executable with "Allow future versions of the LabVIEW runtime to run this application" unchecked.

 


By default it is unchecked. Not clear why the vendor would enable this. Are you absolutely sure the application now uses the LabVIEW 2020 runtime.

 

The help for that option is a bit scary:

 

Allow future versions of the LabVIEW Runtime to run this application

    —Enables this application to run with future versions of the LabVIEW Run-Time Engine. You can disable this option to bind a build specification to a specific version of LabVIEW. Disabling this option prevents any changes to the performance profiles and helps you avoid unexpected problems resulting from compiler upgrades.

I wonder what these "unexpected problems" could be. Is this one of them? 🙂

 

What kind of drivers does the application use? Could it be that a driver upgrade (while installing 2020) is the cause of the problem?

0 Kudos
Message 4 of 8
(2,790 Views)

altenbach,

 

It can indeed be some other piece of NI 2020 software. The executable uses TCP to interact with the device, so no other NI drivers involved. 

 

I do not know for sure what runtime engine the executable  uses. Is it possible to determine?

0 Kudos
Message 5 of 8
(2,785 Views)

@Fedor wrote:

I do not know for sure what runtime engine the executable  uses. Is it possible to determine?


If you are lucky, the "help...about" popup was left in the runtime menu. See if it is there. (except that it might be broken in the 2020 runtime :()

 

Maybe you could also tell from the task manager somehow.

0 Kudos
Message 6 of 8
(2,781 Views)

I've heard of definite compatibility problems related to this feature.  Curiously, it was turned ON by default in my LV 2020 setup.

Bill
CLD
(Mid-Level minion.)
My support system ensures that I don't look totally incompetent.
Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.
Humble author of the CLAD Nugget.
0 Kudos
Message 7 of 8
(2,776 Views)

altenbach

The executable's "Help...about" is modified from the default. 

 

The Associated Handles in the Resource Monitor point to \Program Files (x86)\National Instruments\Shared\LabVIEW Run-Time\2020\

0 Kudos
Message 8 of 8
(2,747 Views)