We have a shared class that gives us all of the logical installed paths (this path can be set by the end-user) so we add that logic in as well which can be placed in the BO (custom code property).