LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

GetRTSystemInfo entry point not found in RTE DLL

The CVI RTE version nightmare continues ....
 
I built a distribution kit for a DLL using CVI FDS 8.0.1.  The development system at one point in time had an eval version of CVI 8.5 installed, that had (supposedly) been removed, and CVI 8.0.1installed.
 
BUT when I install a dist kit built on this system, the installer reports that it is adding/updating NI components(!) and after the install, NI MAX reports CVI RTE version 8.5 (!) even though the various dll's (cvirte.dll et al) are the 8.0.1 versions !   Something is "sticking" that goofs NI MAX into reporting the 8.5 RTE version.    We can't use the RTE 8.5 version because of a problem with a serial port.
 
I removed the CVI RTE from the target, and further removed any NI DLL's I could find in the Windows\system32 folder.
 
I re-installed the CVI 8.0.1 RTE after downloading it from the NI website.
 
Now, when I start up a particular CVI-built application, I get an error popup saying
"The procedure entry point GetRTSystemInfo could not be located in the dynamic link library cvirte.dll"
 
Several other CVI-built applications work just fine.
 
I suppose the problem application might be finding some other version of the RTE somewhere.
 
Does anyone know what specifically might be wrong?
 
Menchar


Message Edited by menchar on 06-03-2008 05:23 PM
0 Kudos
Message 1 of 2
(2,901 Views)
The error popup you describe suggests that your application was built with CVI 8.5 (linked against the 8.5 RTE import library). Try rebuilding that application with CVI 8.0.1. If you build a program with a certain version of CVI, it must run on a system with at least that version of runtime engine.

MAX displays a path next to the version of the RTE. It gets the version by looking at the version of the DLL at that path. I have confirmed that this number changes when I swap versions of cvirte.dll in my system directory.

I'm not sure if you use the local install ("Install LabWindows/CVI Run-Time Engine in the Application Directory..." on Advanced tab) option of the distribution builder, but if any of the installed software used that option, they would have and use their own private copies of the RTE. This could result in some confusion with RTE versions. As a side note, this option is useful when you want a certain application to be bound to a particular version of the runtime engine. It can allow you to distribute apps that use newer RTE features to systems while leaving an older, global version of the RTE untouched, for all other apps to use. Similarly, it can allow you to upgrade the global RTE on a system, while apps deployed with private RTEs continue to use those older versions.

Mert A.
National Instruments
0 Kudos
Message 2 of 2
(2,882 Views)