This VI Is Not Executable Error When Trying to Run an Executable

Updated Jan 23, 2020

Reported In


  • LabVIEW
  • LabVIEW Runtime

Issue Details

I have a LabVIEW executable that will run on some Windows computers but not others. When trying to run the executable, I receive the error: This VI is not executable. The full development version of LabVIEW is required to fix the errors, as shown below:

I have installed the correct version of LabVIEW Run-Time Engine and all necessary drivers. What is the cause of this error?


The cause of this is often an outdated version of the .NET framework on the non-development computer.  To resolve the issue, you should upgrade .NET framework to at least the version that is installed on the development machine.
  1. You can download the current version of .NET framework from Microsoft's website . Check Additional Information for information on determining what version of .NET you have installed.
  2. Make sure all NI and third party drivers being used by the executable are installed on the computer trying to run the executable.
  3. If updating .NET does not solve the error or if you are already on the latest version:
  • Regardless whether or not you have any subVIs in your executable, you can try unchecking Remove unused polymorphic VI instances and Disconnect unused inline subVIs under the Additional Exclusions section when building your executable.
  • Another good step to try is a mass compile on your project. More information on why this can be helpful can be found in the Additional Information section of this document.
  • You could try to debug the executable remotely, to identify where the error is occurring. This will give you more information on what might be the cause of the error.
  • If you are using XControls you can try checking the Disconnect Type Definition option in the Build Specifications, and add the XControls to the always included section.

Additional Information

You can check the versions of .NET installed on Windows by following the steps below:
  1. Click Start » Run (Alternatively press Windows Key + R)
  2. Type regedit in the Run dialog box.
  3. In the Registry Editor navigate to HKEY_LOCAL_MACHINE » SOFTWARE » Microsoft » .NET Framework to view all versions of .NET Framework.

When mass compiling, LabVIEW opens and closes VIs automatically. This does the following:
  • Ensures that all subVIs exist and relinks them to the main VI. It decreases loading time since LabVIEW will not need to search for the VIs.
  • Updates the VIs to the current LabVIEW version.
  • Reports corrupted VIs which can prevent them from loading correctly.