01-06-2020 11:13 AM
Hi All,
I'm getting the labview system.io.filenotfoundexception error when executing the application built from my VI.
Initially I was getting this error (screenshot below), which I mitigated by placing the missing .llb in "data" folder in the application directory:
However now I'm getting this error (screenshot below) and can't figure out what exactly is missing:
I tried using Process Monitor from sysinternals with no help as I'm getting thousands of lines even after filtering to see prompts initiated by the application only.
I also reviewed all the associated VI's and subVI's using LLB manager. I have reconfigured some path's which Labview couldn't locate by itself, however the problem is still there...
Any help is much appreciated!
Regards,
Alibek
01-06-2020 11:45 AM
The problem you're seeing there is a problem with DLLs. You probably need to find all DLLs that the VIs are calling, and ensure that all of those DLLs, plus all of their dependencies, are in the application directory.
01-07-2020 02:41 AM
It seems to me the dlls are loaded and executing as expected.
A .NET function in Run Ultracom.vi is trying to locate a file (not a dll), and that file cannot be found.
If the file is passed by the VI to the function, put a popup in the VI so the exe shows the path. If not, you'll have to dig until you find what file is missing.
01-13-2020 07:52 AM
Found the problem. When compiling (building the .exe), Labview placed one of the dependant files into the "data" folder, while it should have been sitting in the same folder with the created executable.
Would be much easier if labiew indicated exactly what file was missing in the first place...
01-13-2020 09:25 AM
@Alibek70 wrote:
Found the problem. When compiling (building the .exe), Labview placed one of the dependant files into the "data" folder, while it should have been sitting in the same folder with the created executable.
The file can be placed in the executable root directory*, but it's not by default.
* You can change this in the "destination" tab in the execution builder, but you first have to add a destination, IIRC.
@Alibek70 wrote:
Would be much easier if LabVIEW indicated exactly what file was missing in the first place...
LabVIEW functions give a detailed error, and it would be up to the programmer to report them. However, the .NET errors are a bit more abstract...