LabVIEW Executable Can't Find The "Write Waveform to File.vi" After It Has Been Copied

Updated Nov 29, 2023

Reported In

Software

  • LabVIEW
  • LabVIEW Application Builder Module

Issue Details

When I create a LabVIEW executable and enable the the "Support Directory" to be included in the build, I get a data folder which contains all the dependencies:
 
When I have used the "Write Waveform to File.vi" and created the executable with the dependencies data folder, then copy the entire executable folder (including the .exe, .aliases, .ini files and data folder) to another location, my executable cannot find the "Write Waveform to File.vi" and I have to manually search for it:
On inspection, the original " Write Waveform to File.vi" has a blank character at the start of the VI name, but the copied "Write Waveform to File.vi" does not:




 

Solution

By default, Windows will try to remove blank characters from the start of file paths when the files are created, renamed, or when they are copied. This means that when the " Write Waveform to File.vi" (with blank character) is copied, Windows will automatically remove that character. This can cause issues with the LabVIEW executable, or other applications that reply on this file after it has been copied.  

The " Write Waveform to File.vi" (with blank character) is part of the WDTFileIO.llb found here: C:\Program Files (x86)\National Instruments\LabVIEW 20xx\vi.lib\Waveform\. It is a known issue that this VI in this library has this blank character. The suggested workarounds are:
  • Use another application to copy and paste this VI. The default Windows copy and paste will remove the blank character, so try:
    • robocopy which is functionality built into Windows and access through the Command Line
    • Or a 3rd party copy and paste solution
  • Create a copy of the WDTFileIO.llb and rename the " Write Waveform to File.vi" (with blank character)
    • Copy WDTFileIO.llb from C:\Program Files (x86)\National Instruments\LabVIEW 20xx\vi.lib\Waveform\ to location of the LabVIEW Project you are developing. 
    • Open WDTFileIO.llb and rename " Write Waveform to File.vi" (with blank character) to "Write Waveform to File.vi", removing the blank character
    • Save and use this "Write Waveform to File.vi" in your project. 

Additional Information

If you need to find and replace any " Write Waveform to File.vi" (with blank character) to "Write Waveform to File.vi" (no blank character), then use the Finding and Replacing VIs, Objects, and Text functionality.