From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
03-12-2014 08:44 AM
After the installation of my executable it doesn't appear in Windows All Programs list. I built a lot of executable and installers before but it is the first time I see this. The folder is created in the Program Files (x86) directory and the program run well when I double-click on the .exe.
This sw was initially developped with LV10 with WinXP then moved to LV2012 with Win7 64-bit and then to LV2013 and it uses a plugin architecture (I'm still not very familiar with this).
I also have these following questions:
1- I don't remember seeing so many folder created after building an exe (see attached picture "filelist.png") before moving this application to LV2013, why are all these dataX folders created? (related to the plugins?). Except for the data folder that contain my ini and xml configuration files these folders all contain a single mnu file.
2-Why are there some instrument driver folders included in the build? (Agilent, Keithley and Tek) I'm also using other equipments and they don't show up in the build. These caused issues with the build because of their VI tree VIs. I either had to check enable debugging or use the diagram disable structure on these VIs block diagram which is surely not the proper way to do this.
3- Probably the most important, what would be a good reference document on how to build an executable and an installer for a plugin architecture application.
Thanks
Ben64
Solved! Go to Solution.
03-12-2014 09:35 AM
03-12-2014 10:23 AM
You should attach an lvproj-file with a build spec showing this behavior.
It seems to me that your build spec somehow got messed up. Potiential source of an issue like this could be the checkmark "8.x layout" as it will remove identical VI names from the EXE and move it into individual support folders outside the EXE. At least, your screenshot implies that you do have elements using LVOOP (where identical names are common due to dynamic dispatching!) in your source base.
Norbert
03-12-2014 10:55 AM
03-12-2014 11:09 AM
You are using LVOOP as you are using the NI Report Generation Toolkit, which is implemented using OOP. That already explains some of the additional folders you are seeing.
Other components are obviously already part of lvlibp (Packed Project Library) and hence will not integrate into the EXE itself. Also their dependencies..... which can explain further support directories (data1, data2, ...).
Referring other settings, the log file does not help much. So we cannot tell you why the installer does not create a program shortcut into "Start>>Programs". If you check the "shortcuts", you should be able to see if there is a routine in the installer to create such a link or not. If the setting is there, but the installation fails to create it, it might be connected to the user rights you are using for running the installer.....
Norbert
03-12-2014 12:11 PM
Thanks Norbert, I think I now have an idea why these folders are created. I created a library of utility functions and put it in my user.lib directory a replaced the original functions in the code by these library functions.
I also checked the shortcut section and no exe was was selected, so selecting the main exe solved the issue.
One wonder, will the installation work on a PC that doesn't have the development environment and my utility lvlib?
For information I attached the build folder structure of a previous version (before the use of the userlib).
Thanks again
Ben64
03-13-2014 03:02 AM
If you are not using any dynamic VIs in your hierarchy, it should work.
Dynamic dependencies have to be configured manually as "always include".
If components (as your support classes) are not compiled into the EXE itself, the LV Application Builder creates a "Source Distribution" for each of those components.
The source distribution takes care that internal dependencies of the component are part of the deployment.
If your application does not execute on a PC without development system of LV, you have to re-evaluate your build script as most likely one (or more) dependencies have not been addressed, most likely dynamic VIs.
Norbert
03-13-2014 08:06 AM