====== 43 Installers ======
First, to generate an Installer an already built Application (EXE) is required. The Installer access the application to gather information about the containing VIs and required dependencies.
If the application needs some additional files like config-files, these files are not needed in the Application build spec. These files will be added by the Installer build spec.
===== Install properties =====
An elaborated description of all properties is available here: https://zone.ni.com/reference/en-XX/help/371361R-01/lvdialog/installer_tab_windows/
==== Destinations ====
In this tab you have to decide where to install your files. The default destination is ''[Program Files]'' (''c:\Program Files (x86)\''). This is fine for many applications but has the downside that the application has (executed //without// admin rights) no write permissions for the files in this location. That means it's necessary to store writeable config-files or log-files in a different location.
Under Windows the preferred location for apps and files which need full user permissions is a folder under ''c:\Users\\AppData\Local''. Unfortunately the Destination Tab has no predefined destination for this, luckily it supports the definition of [[https://docs.microsoft.com/en-us/windows/win32/msi/property-reference|Microsoft MSI Properties]] ([[https://docs.revenera.com/installshield24helplib/helplibrary/IHelpISXFilesDestinations.htm|better overview for folder properties]]).
To install files in the users AppData-folder you have to add new properties by clicking the button ''Add property'' and give it the property ''LocalAppDataFolder''. Then you can create sub-folders under the new base location.
If you mark your new install directory as //"default installation directory"// then it will be displayed in the installation program as the default installation path.
{{:kb:labview:installer_-_destinations.png?direct&400|}}
==== Source Files ====
Here you have to assign your application files to the location(s) defined before.
You can not assign a whole directories to a location. You have to create all directories in the Destination tab and then assign every single file into the desired folder.