cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Meffapef
Level 3

WOW64FSREDIRECTION and external .exe

Hello everyone,

In my installer, I have to use an .exe. No problem on this side. But to avoid that the files are copied to C:\Program File(x86), I use Disable(WOW64FSREDIRECTION).
At first, I followed this example ( WINSYSDIR64  )

Disable(WOW64FSREDIRECTION);

XCopyFile("c:\\program files (x86)\MyInstaller", "c:\program files\MyInstaller",INCLUDE_SUBDIR);

Enable (WOW64FSREDIRECTION);

Of course, this does not prevent the creation of folders from this .exe in C:\Program File(x86)

So I thought of using it in another way, like this:

Disable (WOW64FSREDIRECTION);

LaunchAppAndWait( szProgram , szCmdLine , WAIT )

Enable (WOW64FSREDIRECTION);

But this did not change the problem.

How can I make sure that the folders created at the execution of this external exe are in c:\program files and not in C:\program files (x86) ?

0 Kudos
(2) Replies
varul
Revenera Moderator Revenera Moderator
Revenera Moderator

For an external exe package you wont be able to change the install file directly using wow64 enable or disable you need to change the installdir of that exe package, if the package is created with installshield you can use INSTALLDIR property to change the location to as your wish,

Else you need to first install the exe file to its original location and then you need to write a script to copy files to x86 to program files folder, however make sure exe is not an 32 bit application,  if its an 32 bit application it wont work in 64 bit path. 

Refer below link for change installdir using commandline

https://stackoverflow.com/questions/8839978/install-msi-with-msiexec-in-a-specific-directory

0 Kudos

Thank you very much for this answer. 

I tested with INSTALLDIR in command line (not with InstallShield) and it works. Great !

I did this:

MyExternalExe.exe /v"INSTALLDIR="c:\PROGRA~1\Test"

 

Now, how can I import ("translate") this into InstallShield?
To execute this external exe, I use the LaunchAppAndWait function. But how do I pass it as an option that I want it to change "INSTALLDIR"?

Do I have to change the INSTALLDIR in the appilcation directly?
I saw this documentation https://docs.revenera.com/isxhelp21/helplibrary/ExpressFAQSpecifyDestination.htm but I can't find this INSTALLDIR parameter in my case.

0 Kudos