Archived:Code Generation Errors in LabVIEW SignalExpress After Updating LabVIEW

Updated May 21, 2020

National Instruments does not actively maintain this document.

This content provides support for older products and technology, so you may notice outdated links or obsolete information about operating systems or other relevant products.

Reported In


  • SignalExpress

Issue Details

I was using LabVIEW with LabVIEW SignalExpress and recently upgraded to a later version of LabVIEW. I installed new drivers to support my new version of LabVIEW and now I cannot import SignalExpress projects into LabVIEW. What caused this problem and how can I fix it?
Code Generation Error:

The version of LabVIEW you are generating code into does not contain all the necessary SignalExpress support files. Make sure you launch the version of LabVIEW with SignalExpress support installed before generating code from SignalExpress. If you want to generate code into more than one version of LabVIEW, uninstall SignalExpress and all versions of LabVIEW except the earliest. Install SignalExpress, then install any other versions of LabVIEW. Copy the files from the vi.lib\express\SignalExpress directory of the earliest installed version of LabVIEW into the same sub-directory location of any other version of LabVIEW in which you want to include support for code generation.


This problem occurs when you upgrade LabVIEW but do not install LabVIEW SignalExpress support for the latest version. Here is an example of an installation order that would cause this error:
  1. Install LabVIEW
  2. Install LabVIEW SignalExpress
  3. Install a later version of LabVIEW
  4. Install NI Driver CD with NI-DAQmx 8.5 or above and disable the installation of LabVIEW SignalExpress. The default option on the Driver CD is to install LabVIEW SignalExpress, which will overwrite the earlier version of LabVIEW SignalExpress.
The last version of NI SignalExpress in 2015. There are currently no plans to release future version of SignalExpress. If you require newer software, you should consider moving towards DAQExpress or FlexLogger as laid out in Where Are Newer Versions of SignalExpress?

Additional Information

This problem occurs because parts of LabVIEW SignalExpress are installed automatically by the NI Driver CD, even if you have disabled the installation of LabVIEW SignalExpress. When these parts are updated they install VIs based on the later version of LabVIEW. However, in this scenario, the first install of LabVIEW SignalExpress installs all of its support for the current version of LabVIEW when it was installed (the version installed in step 1 listed above). This installation scenario will confuse the LabVIEW SignalExpress code generation engines, which will not know to use the later version of LabVIEW instead of the original version of LabVIEW.

You can solve this issue in two ways:
  1. Completely reinstall LabVIEW SignalExpress:
  2. Install LabVIEW SignalExpress from your driver CD or download it from the page linked at the end of this document.
Note: This ensures that all of the components of LabVIEW SignalExpress are updated and point to the same version of LabVIEW. This method is preferred because it associates all of the VIs with the same version of LabVIEW and puts them all in the same location. The NI Device Driver CD contains the full installer for LabVIEW SignalExpress, which will be installed by default.

Manually copy the necessary VIs from the older version of LabVIEW to the new version.
Copy the following files to the new folders:
  • <labview>\project\Express Workbench
  • <labview>\vi.lib\express\SignalExpress
  • <labview>\vi.lib\addons\SignalExpress
For example, if upgrading from LabVIEW 7.1 to LabVIEW 8.2 and C is your root directory, you would copy the files listed from:
C:\Program Files\National Instruments\LabVIEW 7.1\ to
C:\Program Files\National Instruments\LabVIEW 8.2\

Note: This action will enable SignalExpress to generate code in the latest version of LabVIEW and will also enable the code generation engines to find all of the VIs they need. This option is NOT preferred because it relies on having VIs scattered in many locations all saved in different versions of LabVIEW but it will work.