11-17-2021 12:03 AM
Hello everyone,
i have mutli version of labview installed in my machine. after installing DAQmx driver, the DAQmx function pallet appeared only on the latest version of labview installed (2021). when i using labview 2018, the DAQmx function pallet was missing. is there any way i can make the DAQmx function pallet appeared in all version of labview. reason is 2021 is trial version and i have full version of labview 2018
11-17-2021 09:31 AM
As long as you installed DAQmx after installing all the LabVIEW versions, you should see DAQmx on all LV installations.
11-17-2021 11:22 AM
@santo_13 wrote:
As long as you installed DAQmx after installing all the LabVIEW versions, you should see DAQmx on all LV installations.
Just to elaborate a tiny bit, every time you install a new version of LabVIEW, you need to reinstall your drivers and toolkits so they "become aware" of the new install.
11-17-2021 11:51 AM - edited 11-17-2021 11:52 AM
@santo_13 wrote:
As long as you installed DAQmx after installing all the LabVIEW versions, you should see DAQmx on all LV installations.
Not quite! All NI drivers only support the matching LabVIEW version and 3 major versions prior to that.
So DAQmx 21.0 supports LabVIEW 2021, 2020, 2019, 2018.
But yes the drivers always need to be installed after LabVIEW has been installed. They detect which LabVIEW versions are present and only install support files into those versions that are present. Also they will remove the according support from earlier versions than what they support because they will first uninstall any previous version of the driver before installing the new one.
11-17-2021 03:56 PM - edited 11-17-2021 03:57 PM
We have quite a lot of LV installations here. We did a big migration for LV 2016, a small number of 2018 upgrades, and are starting another bigger migration to LV 2020 64-bit.
I don't know what sequence of events led to this, but I have a couple dev systems with DAQmx 20 that did *not* remove support for LV 2016. Most systems have removed 2016 support. I don't know how to make it happen on purpose, but there's *some* kind of path that got me here. (And yes, I've used actual DAQmx hardware from both 2016 and 2020 successfully on those systems.)
-Kevin P
11-17-2021 05:34 PM - edited 11-17-2021 05:39 PM
The way I did it in the past when I did not want the new installer to remove support from earlier versions was simply to rename the according "LabVIEW 20xx" directory into "LabVIEW 20xx Hidden", then rename it back after the installer finished.
But this is unsupported!!!!!!
The VIs that get installed into the various LabVIEW versions by a driver installer are specifically adapted to the newly installed DLLs that get installed system wide. While the DLL API is "usually" upwards compatible, there is no guarantee for that between major driver versions. So if you then go and use those old VIs in older LabVIEW versions, while the DLLs have been upgraded, there is a small but realistic chance that things will suddenly bomb and your LabVIEW application will suddenly crash, or in the most extreme case even blue screen because of this mismatch.
11-18-2021 06:07 AM
Thanks for the warning -- and the tip on how to do this intentionally (if wanted). I figured something like that - the LabVIEW "support" API vi's must have stayed intact in their install folder, but the dll(s) they call changed out from underneath them in the system areas. And hence the risk.
In my case, I'm not too worried. It's just a dev machine where LV 2016 is used increasingly rarely to support a small and shrinking number of old installations. The deployment stations where the programs will run are still on DAQmx 16 or 18. I mentioned it mainly as a curiosity, but it's good to hear both how to make it happen *and* why it might be a bad idea.
-Kevin P