kenzo22
Level 6

WIN64DUALFOLDERS issue

Hello all, I have a pure 32-bit installer, and I want it to be installed properly on 64 bit OS. Basically my installer is a plug-in for another application(RTX), so my installer will install some files in RTX's install directory, I have defined a system search to find the install path of RTX.

Here is the problem, if I install RTX under programfiles (x86) folder(which is the default option on 64 bit OS) and then install my plug-in application, everything is ok. But if I install RTX to other directories such as C:\Program Files and then install my plug-in application, I find this in my MSI log "WIN64DUALFOLDERS: 'C:\Program Files (x86)\' will substitute 17 characters in 'C:\Program Files\Tencent\RTXC\' folder path. (mask argument = 0, the folder pair's iSwapAttrib member = 0)."

It seems somehow MSI changed the actual path find by the system search and therefore install my files to the wrong directory, which makes my plug-in fails to load, can I prevent this, any ideas are appreciated
Labels (1)
0 Kudos
5 Replies
kenzo22
Level 6

Update: I tried to install RTX to other directories and then install my plug-in application. I found only when I install RTX in C:\Program Files, the system search result will be automatically substituted by C:\Program Files (x86), while other directories will not trigger this substitute thing.
0 Kudos
kenzo22
Level 6

I think my scenario is a common one, does anyone encounter this before, we really want to provide one installer for both 32bit and 64bit OS, any suggestions are appreciated.
0 Kudos
MrTree
Level 6

Do you realy have to do a system search?

What about HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\exename

Does ProgramFiles64Folder point to the right place?
0 Kudos
kenzo22
Level 6

Thanks for your reply. Unfortunately, RTX install didn't write a rigstry under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\exename. However, if we can ask them to add this registry, what you mean by not using system search? We still need to access this registry entry and read the "app path". Does this registry stay in the same place no matter the OS is 32bit or 64 bit? About the ProgramFiles64Folder, I checked the directory table, its default value is ".:Prog64~1|Program Files 64", I don't think I have ever changed it.
0 Kudos
Tim_Mayert
Level 9

kenzo22, did you ever get your 32 bit installer to write files to the C:\Program Files\ folder on a 64 bit machine?

Thanks,
0 Kudos