01-19-2018 03:02 PM - edited 01-19-2018 03:03 PM
I've completed (thus far) a project I am working on to collect data on a 3rd party data acquisition system (UEI is the company). Everything works fine in the development environment, but when I run my built exe it crashes when trying to establish communication with the hardware. After scratching my head for a while, I've noticed that within the Build Specification Properties for the application I am unable to add the required dll to "always include." At first the dll was showing up under dependencies, so I moved it into the project itself. When I try to move it to "always include" I get a yellow triangle with "The selected file was not saved" (picture included). I've tried manually adding the dll to the build directory both within the data folder and next to the exe, but that didn't work either.
Another thing that is interesting is that if I go to File View for that DLL then it drops it under the C: directory, but I know that the file is not there (picture included). I've I try to explore to that file directory I don't have the option to.
I'm also including what the default calling for the DLL is like within the code. I'm wondering if I need to more specifically specify where the DLL is.
I'm currently using Labview 2017. Before this I was using 2015 and everything worked.
01-22-2018 08:47 AM
@JaRay200 wrote:
After scratching my head for a while, I've noticed that within the Build Specification Properties for the application I am unable to add the required dll to "always include." At first the dll was showing up under dependencies, so I moved it into the project itself. When I try to move it to "always include" I get a yellow triangle with "The selected file was not saved" (picture included). I've tried manually adding the dll to the build directory both within the data folder and next to the exe, but that didn't work either.
Another thing that is interesting is that if I go to File View for that DLL then it drops it under the C: directory, but I know that the file is not there (picture included). I've I try to explore to that file directory I don't have the option to.
To see where the Project thinks the DLL is located, in the Project Explorer Window (your FileView image), click Project on the Menu Bar and choose "Show Item Paths".
I'm currently using Labview 2017. Before this I was using 2015 and everything worked. This should tell you something! I've not (yet) gotten LabVIEW 2017 to install properly on my PCs, am waiting (patiently) for SP1. I'm very happy with LabVIEW 2016 (which at least had a full 12-month Development Cycle).
Bob Schor
01-22-2018 09:55 AM
I'm not sure if this will help, but I had a similar problem and my solution was to change the reference based on if it was Run Time Engine or not. Apparently the default location for looking for these files changes depending on if you're running in LabVIEW or using an executable. I explicitly use the ..builds\data directory when compiling to an exe and make sure that copies of my dlls are also saved there.
01-23-2018 12:55 PM
I'm glad to see know the "Show Item Paths" option exists. What I am greeted with is that the path for this dll, UeiDaq.dll is coming up as just "UeiDaq.dll"
The default calling path within the dll calls (written by the company) is simply "UeiDaq.*" There any at least 50 VI's that make the same reference. I'm wondering if I should go through and manually set the location path to where the dll is. The dll installs within the system32 folder.
01-23-2018 12:56 PM
I've tried manually adding the dll to the builds\data directory, and it does not work.
03-18-2020 09:19 AM - edited 03-18-2020 09:20 AM
Just in case anyone else who runs into the "The selected file is not saved" issue as JayRay200 and I have, try the following:
1) Click Project > Show Item Paths (to view the following path change)
2) Right-click on the DLL file in the My Computer list and click Remove from Project.
3) Right-click on My Computer and click Add > File
4) Navigate to the folder containing the DLL file and click Add File.
The new path should appear and, hopefully, the yellow triangle is now gone.
Cheers!