Solution
You can receive Error 1003 or Error 7 when you try to call a VI by reference or try to run a VI dynamically using VI Server and the called VI cannot run. The error is described as it follows: "The VI is not executable. This error may occur because the VI is either broken or contains a subVI that LabVIEW cannot locate. Select File>>Open to open the VI and verify that you can run it. "
A common reason the VI cannot run is because LabVIEW cannot locate it or one of its subVIs. This also often occurs when the VI depends on a driver that has not been installed on the current system (for example, NI-DAQmx or NI-SoftMotion). Another reason why this could happen is because LabVIEW can not find missing DLLs or has out of date DLLs. Linkage problems can also happenif the VI is invoked, rather than being called outright. In general terms the error is produced when the VI or subVI can't execute due to missing dependencies.
The easiest way around this is to include any VIs that you call dynamically and dependencies into the build. The procedure for this is shown below. However, if the VI being called by VI server is not static, for example, if it is changed after build time and you do not want to rebuild and distribute the entire executable, ensure you use relative file paths for the VIs you will be calling. You will also need to copy the VIs you would like to execute into the relative file path on the target machine. Besides, see Building and Distributing Applications for the proper process for building distribution.
For LabVIEW 8.5 and later:
Include the dynamically called VIs in the Always Included section of the Source Files tab in the Application Builder build specification.
For LabVIEW 8.0 to 8.2:
Include the dynamically called VIs in the Dynamic VIs and Support Files section of the Source Files tab in the Application Builder build specification.
For LabVIEW 7.1 and earlier:
Click Add Dynamic VI from the Source Files tab in the Application Builder build specification.
If the error still occurs, load the VI in the LabVIEW development environment and make sure it is not broken. If you do not make any changes to the VI and receive a prompt to save changes when you close the VI, some subVIs were found in a different location. Save the VI with the new locations and build the application again.