Strange behavior of ROOTDIR and EXEDIR

Got a problem you cannot solve? Try here.
Post Reply
Feyh
Posts: 21
Joined: Thu Apr 05, 2012 2:48 am

Strange behavior of ROOTDIR and EXEDIR

Post by Feyh »

EDIT:

Found the solution.
In my case (compressed single file installation) "SFXPATH" contains the path of the executable which initialized the installation.
But still the question: Why do the other variables contain different values?


Hey all,

I've got a question related to the predefined variables "ROOTDIR" and "EXEDIR":

The IA help file includes the following description of both variables: "The folder containing the setup executable itself."

Means they'll hold the Path, were the user started the installation from. Am I right?

Example:

MyInstallation.exe is in the folder C:\MyProgramsSo both variables should contain "C:\MyPrograms\". Am I right?

Now i got the following strange "error":

Now have a look at the attachment of this post.

1. I create a debug build of my installation. I've added a textbox at the beginning of the installation which contains the both variables.
2. i start the installation via "debug". You can see the values of the variables in the first messagebox in my screenshot.

3. i'll start the installation via "Start" (the green arrow). You can see the values of the variables in the second messagebox in my screenshot.
4. I'll create a compressed release build of my installation and start it. You can see the values of the variables in the third messagebox in my screenshot.

Could someone explain my why they hold 3 different paths?

Solved: Final question: How can i retrieve the Path to my executable file which was started by the user?

Thanks in advance!

Greetings
Feyh
Attachments
strange_behavior.PNG
strange_behavior.PNG (22.81 KiB) Viewed 5855 times
FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Strange behavior of ROOTDIR and EXEDIR

Post by FrancescoT »

Dear Feyh,

Those directories refers to where the setup exe file is executed from and what you found, it is the correct behavior and depends on the bulid type used.

In Debug mode, the setup is excuted through InstallAware debug engine that's why the EXEDIR refers to IA installation folder.

Running the application after debug build (using the green arrow), because it is an UNCOPRESSED build, those variables will point to your UNCOPRESSED RELEASE folder.

When a COMPRESSED build is executed, the setup souces files have to be first uncopressed and these files are temporarily stored in the temp folder for the curent user account.

Hope this helps you.

Regards
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE
Feyh
Posts: 21
Joined: Thu Apr 05, 2012 2:48 am

Re: Strange behavior of ROOTDIR and EXEDIR

Post by Feyh »

Hey FrancescoT,

:idea:
thank you for the description. Now I understand it. It's kinda logical if i think about it now :roll:

Have a nice weekend!

Greetings
Feyh
FrancescoT
Site Admin
Posts: 5361
Joined: Sun Aug 22, 2010 4:28 am

Re: Strange behavior of ROOTDIR and EXEDIR

Post by FrancescoT »

:D :D
Francesco Toscano
InstallAware Software

White Papers (HowTos) - http://www.installaware.com/publication ... papers.htm
Publications - http://www.installaware.com/publications-review.htm
InstallAware Help -F1 anywhere in the InstallAware IDE
Post Reply