Hi,
What I always do is the following:
Somewhere in my LV data directory. I make a directory for my application. We call this 'application'
In this folder I create directories for my VI's, support files, and .... In one of those directories there is my main VI. We call this directory 'main VI's' The target directory for the application builder is the 'application' directory.
In your main VI you use the VI 'current VI path' function with 2x strip path and you have the application directory as start path. From this point you have a (relative) path to all your files.
It works for your VI and for your executable. You can create all the sub directories you want to store your VI's and support files.