Error 1003 occurred at LabVIEW Invoke Node in Main VI

Updated Nov 3, 2023

Reported In

Software

  • LabVIEW

Issue Details

We have an application which contains the base class for dynamically dispatching the plugins during run-time.
When the application tries to launch the dynamic VI we are getting the error as shown:

Solution

For you to overcome the issue, follow the mentioned points:
  • Uncheck Separate compiled code from source code parameter in the specific VI properties.
  • Include in stand-alone application all of the function dependencies from the project by unchecking marked parameters bellow.
 

Additional Information

  • LabVIEW 20xx (any version) has a built-in compiler. This converts the block diagram into code that runs for the current OS.
  • Applications built by LabVIEW only contain the run-time engine but do not include the tools necessary to compile or edit any VIs.
    • For LabVIEW versions newer than 2011:
      • When a VI is saved to a hard disk, it saves the front panel, block diagram, icon/connector pane, and complied code into single file (.vi). When a VI is called from an application (built from LabVIEW), it uses the complied code (inside the VI) to run the VI.
    • For LabVIEW versions older than 2011:
      • Separating compiled code from the graphical VI source code is an option in VI Properties >> General. If you enable this feature, there are benefits like
        • Smaller VI size on disk
        • Unnecessary check-in and check-out of top level VIs in source code control if the subVI is edited.
      • It should be noted that the LabVIEW Runtime Engine will be unable to dynamically call and run standalone VIs with the above option checked because the Runtime Engine will have not have access to the compiled code.
  • For LabVIEW 8.x version project it's necessary to check Use LabVIEW 8.x file layout property in build specification in order to call these VIs from a newer version of LabVIEW