Jump to content

This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.

Copy files in 64 bit programs directory from 32 bit installation msi

2 replies to this topic


  • Full Members
  • 77 posts

Posted 12 July 2016 - 14:20


My installation package is 32 bit installation. Please note that having separate 64 bit installation is not the option available for me.

My installation detects installation of another 64 bit third part software and is required to copy few files in installation directory of third party application.

Since my package is 32 bit the installation copies files in program files(86) directory while its expected to copy in program files directory.

As per installer documentation its correct. 

Is there any manual work around to copy the files by using script / batch file etc ?

Please note that when i create patch for this release installation should be correctly able to patch the files.

Thanks in advance.


Stefan Krueger

Stefan Krueger


  • Administrators
  • 13,269 posts

Posted 14 July 2016 - 15:30

I don't think there's a supported way. A custom action might work but it may be necessary to launch it in a separate, 64 bit process


  • Full Members
  • 437 posts

Posted 22 July 2016 - 02:46

I had a similar issue a while back.  I had to get files/registry entries in native 64 bit locations from a 32 bit installer.


My first attempt is to create a 64 bit .msi package and Chain it to the 32 bit installer.  No matter what I tried, the installation directory of the 64 Bit installer package would revert to the 32 bit location.


So, my workaround - on 64 bit systems, actually install my 64 bit .msi package to some directory.  Created an .exe custom action with [INSTALLDIR] passed in that would only run if VersionNT64.  I might add that the custom action .exe was compiled as 64 bit as well.  I didn't try firing the .msi with a 32 bit custom action .exe, but I figured why risk it.  I didn't want something funny to happen if the .msi was launched by a 32 bit process.


When launched, the required 64 bit pieces get where they need to be.


I also pass a /u to my custom action .exe on uninstall so that the 64 bit package is removed along with the main 32 bit product.


Hope this gives you ideas on things to try.  It was a pain in the backside to devise, but its the best I could do until we can move our entire app to 64 bit.  I understand in your case that even this isn't an option so maybe my workaround will work for you.  If your app and install package was native 64 bit, you could just add the third party pieces where they need to be.