LabVIEW 9 to 8.5: Converting VIs for Older Systems

Brian Holt6 min read
Other ManufacturerOther TopicTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

The symptom is simple: a VI saved in LabVIEW 9 will not open on a workstation that has only LabVIEW 8.5. Re-saving the same file, copying it to another folder, or changing its filename does not change the VI file format. Create a converted copy with LabVIEW's Save for Previous Version function, then test that copy in the actual 8.5 environment.

Skip the quick fixes that do not change the format

Start on the LabVIEW 9 machine. LabVIEW source files are versioned documents, so the 8.5 development environment cannot directly load a VI last saved in version 9. The operating system does not perform this conversion.

Quick fix Why it fails Required action
Rename or copy the VI The internal file format remains LabVIEW 9. Save a converted copy for LabVIEW 8.5.
Change the extension The extension does not control the serialized VI version. Keep the proper LabVIEW file type and convert it in LabVIEW.
Open and use normal Save Normal Save preserves the current development version. Use Save for Previous Version.
Convert only the top-level VI SubVIs, libraries, controls, and other dependencies may remain unavailable or incompatible. Convert the complete application hierarchy.
Overwrite the working source This removes the clean LabVIEW 9 baseline and complicates recovery. Write the 8.5 copy to a separate folder.

Check: Confirm that the source still opens normally in LabVIEW 9 and that no one is editing it during conversion.

Inventory the complete application before converting

Identify the top-level VI and every file it needs. Include project files, subVIs, type definitions, custom controls, libraries, configuration files, and dynamically loaded VIs. A static dependency normally appears in the hierarchy, but code opened from a path at run time may not. Record those dynamic paths manually.

Also identify external dependencies such as drivers, toolkits, hardware interfaces, shared libraries, and custom components. Saving for an older LabVIEW version converts compatible LabVIEW source; it does not install missing drivers or replace functions unavailable in the older software stack.

  • Open the intended top-level VI in LabVIEW 9.
  • Resolve missing-file prompts before conversion.
  • Run the application once and exercise any path that loads code dynamically.
  • Record required non-VI files and target-machine dependencies.

Check: The LabVIEW 9 application must load with no unexplained missing dependencies, and the inventory must include every run-time-loaded file.

Create a separate LabVIEW 8.5 conversion folder

Preserve the LabVIEW 9 source as the master copy. Make an empty destination folder specifically for the 8.5-compatible set. Keep the directory structure where relative paths matter; flattening a hierarchy can produce duplicate filenames or break path-based loading.

Close unrelated projects before conversion so similarly named VIs from another search path are not pulled into the saved hierarchy. If source control is available, commit or label the working LabVIEW 9 revision before starting. Otherwise, retain a verified backup outside the conversion destination.

Do not edit the same converted VI alternately in versions 9 and 8.5. Opening the 8.5 copy in LabVIEW 9 and accepting a normal save can advance its file format again, recreating the original problem.

Check: Verify that the destination is separate, initially empty, and contains no files from another build or conversion attempt.

Save the hierarchy for LabVIEW 8.5

  1. Open the application in LabVIEW 9 from the verified source location.
  2. Invoke Save for Previous Version from the LabVIEW file-saving workflow.
  3. Select LabVIEW 8.5 as the target version.
  4. Choose the separate conversion folder as the destination.
  5. Convert the complete hierarchy rather than an isolated top-level VI.
  6. Read every conversion warning before closing the operation.

The conversion can rewrite compatible source into the older format, but it cannot make a LabVIEW 9-only feature exist in LabVIEW 8.5. A warning about an unsupported object, data type, property, method, or project feature is an engineering action item. Replace that feature in the LabVIEW 9 source with an implementation available to 8.5, test the change in version 9, and repeat the conversion into a clean destination.

If LabVIEW 8.5 is not offered as a target, stop searching for a filename workaround. Use an installed LabVIEW release that provides a valid conversion path, potentially through intermediate versions, or contact official National Instruments support for the supported path.

Check: Confirm that the converted folder contains the top-level VI and its required source hierarchy, with every conversion warning reviewed and dispositioned.

Load the converted copy on the LabVIEW 8.5 machine

  1. Move the entire converted folder to the 8.5 workstation without rearranging its internal directories.
  2. Copy the required configuration and data files identified during the inventory.
  3. Install or verify the required drivers, toolkits, and external components separately.
  4. Open the top-level VI from the converted folder in LabVIEW 8.5.
  5. Review the loading dialog, broken-run arrow, error list, and dependency paths before operating equipment.

A missing subVI points to an incomplete hierarchy or an invalid search path. A missing function or broken wire after conversion points to a compatibility change that must be redesigned for the older environment. A missing hardware resource or external library is a target-machine installation problem, not a VI format problem.

Avoid automatically saving a large set of relinked files until the resolved paths are known to be correct. An incorrect search path can silently bind the application to a similarly named dependency elsewhere on the workstation.

Check: The top-level VI must load in LabVIEW 8.5 with expected dependencies, no unexplained search prompts, and no broken run arrow.

Run an end-to-end verification in LabVIEW 8.5

Opening the VI proves format readability; it does not prove functional equivalence. Test the converted application in the environment that will run it. Start with hardware outputs inhibited or the machine in a safe test state, then exercise initialization, user-interface actions, file access, communications, error handling, shutdown, and every dynamically loaded code path.

Test Pass condition
Cold launch The application starts without missing-file or compatibility prompts.
VI execution The run arrow is not broken and the intended top-level VI executes.
Dynamic loading Every path-loaded VI opens from the converted hierarchy.
I/O and communications Configured resources open and exchange expected data.
File operations Configuration, logging, and data paths work under the target account.
Restart The application closes cleanly and repeats a cold start successfully.

Keep the verified 8.5 folder as a controlled release. Apply permanent changes to the designated master source, repeat the conversion, and rerun this verification rather than patching two uncontrolled code lines.

Check: Complete a cold-start-to-shutdown test on the LabVIEW 8.5 workstation without missing dependencies, broken code, or unresolved run-time errors.

FAQ

Why does LabVIEW 8.5 refuse to open a VI saved in LabVIEW 9?

The VI contains a newer file format. Use Save for Previous Version in LabVIEW 9 and select LabVIEW 8.5; renaming or copying the file does not convert it.

Why does the converted top-level VI still report missing subVIs?

The conversion or transfer omitted part of the hierarchy, or LabVIEW 8.5 is searching a different path. Convert and move the complete hierarchy while preserving required relative directories.

Why does a converted VI open with a broken run arrow?

Review the LabVIEW 8.5 error list for unsupported functions, changed interfaces, missing type definitions, or unavailable external components. Replace incompatible code in the master source and convert again.

Why does the VI open in 8.5 but fail when it runs?

Format conversion does not supply drivers, toolkits, shared libraries, configuration files, or dynamically loaded VIs. Compare the target machine against the dependency inventory and test each run-time path.

Why is LabVIEW 8.5 missing from the conversion choices?

Stop here if the installed development environment does not offer LabVIEW 8.5 or if conversion warnings identify code that cannot be replaced safely. Contact official National Instruments support to confirm a supported conversion path and preserve the untouched LabVIEW 9 source for recovery.

Back to blog