01-11-2018 01:22 PM
Hi,
I am trying to create a VI by loading a custom built DLL which references another DLL. I obtained the following error which prevents the execution of the VI.
VI Not Executable
The VI is not executable because of one of the following reasons:
1. The shared library or a dependent file is not installed. To make the VI executable, you must install the shared library and all support files on the computer on which you run the VI.
2. A required custom control might be empty or cannot be found. To make the VI executable, update the custom control manually.
3. The VI contains a parameter with an unsupported data type. To make the VI executable, you must replace the empty cluster that the wizard generates with a control or indicator that uses supported data types.
I have added the dependent DLLs in the same folder as the VI. There are no unsupported datatypes either.
Solved! Go to Solution.
01-11-2018 01:42 PM - edited 01-11-2018 01:47 PM
@macabnv wrote:
I have added the dependent DLLs in the same folder as the VI. There are no unsupported datatypes either.
Please refer to this answer I did just this morning. LabVIEW does not know that your DLL has dependencies and simply tells Windows to load it. Windows sees that your DLL has dependencies and tries to resolve them but for Windows the directory in which your VI is located has absolutely no meaning. Windows doesn't know what a VI is nor that the request to load your DLL was made in reference to that VI!
Windows also doesn't allow an application to add custom search paths for DLL dependencies, so even if LabVIEW wanted it can't tell Windows to add the directory in which the VI is located to the search paths. If Windows had such a feature it would also be a potential security risk as a malicious software could very easily inject its own malware DLL that fakes a normal DLL.
01-12-2018 10:06 AM
Thank you Rolf! That really helped.
02-04-2021 02:39 PM - edited 02-04-2021 02:48 PM
Thank You
I copied my extra dlls in " C:\Program Files\National Instruments\LabVIEW 2020\user.lib\sumarrayWrapper " folder in which that dll is dependent.
Now it is working fine
02-04-2021 02:45 PM
And what is THAT folder?