[wix-users] "Program file" is replaced by "Program file (x86)" [P]

Steven Ogilvie Steven.Ogilvie at titus.com
Wed May 25 08:13:19 PDT 2016


Classification: Public
Dude, my last email....

COMPILE YOUR WINDOWS INSTALLER MSI AS A 64 BIT MSI SO IT CAN INSTALL TO A 64 BIT PATH...

YOU ARE USING A 32 BIT MSI TO INSTALL TO A 64 BIT PATH, *** YOU CANNOT DO THAT *** YOU MUST COMPILE YOUR INSTALLER AS 64 BIT!!!

THAT WAY YOU CAN INSTALL TO EITHER C:\PROGRAM FILES OR C:\PROGRAM FILES (X86)




This message has been marked as Public by Steven Ogilvie on May 25, 2016 11:15:13 AM.
The above classification labels were added to the message by TITUS Message Classification.For More information visit www.titus.com.
-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Leonid Maliutin
Sent: May 25, 2016 11:10 AM
To: 'WiX Toolset Users Mailing List' <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)" [P]

> C:\Program Files and C:\Program Files (x86) are WINDOWS folders The 
> first
is for 64 bit products the 2nd for 32 bit products Unfortunately, these are only guidelines.

> If you don't trust my word or Rob's then google "can you install a 32 
> bit
MSI into a 64 bit folder?"
I do not do it. Microsoft does it.
As you can see it? Simply.

1. Setup Windows 8.1 x64
2. Setup Office 2013 x86
3. Update Windows to Windows 10
And you will see that Office 2013 x86 is in "C:\Program Files\Microsoft Office\root\Office15\".

Clarify. After the update Office 2013 x86 is not in a subfolder of "
C:\Program Files (x86)" it is in the subfolder of "C:\Program Files".

Leonid


-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Steven Ogilvie
Sent: Wednesday, May 25, 2016 5:55 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

Classification: Public
Sigh...

Okay one more time...

C:\Program Files and C:\Program Files (x86) are WINDOWS folders The first is for 64 bit products the 2nd for 32 bit products 

You CANNOT use a 32 bit MSI (when you compiled your installer you choose x86 which is 32 bit) to install to a 64 bit folder (C:\Program Files) choose x64.

You MUST use a 64 bit MSI (compile as x64) to install to either C:\Program Files or C:\Program Files (x86)

If you don't trust my word or Rob's then google "can you install a 32 bit MSI into a 64 bit folder?"

Here is some information...
https://msdn.microsoft.com/en-us/library/cd7a85k9(v=vs.80).aspx

http://helpnet.flexerasoftware.com/isxhelp21/helplibrary/IHelp64BitSupport.h
tm

https://stackoverflow.com/questions/9712909/windows-setup-installer-project-
forcing-installation-into-program-files-not

Steve





This message has been marked as Public by Steven Ogilvie on May 25, 2016
10:56:47 AM.
The above classification labels were added to the message by TITUS Message Classification.For More information visit www.titus.com.
-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Leonid Maliutin
Sent: May 25, 2016 10:49 AM
To: 'WiX Toolset Users Mailing List' <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

Steve

Once again I want to clarify.

When I install Microsoft office I can choose location of files, for example "f:\i_want_this_folder".
In this case
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Word\InstallRo
ot\Path will contain value " f:\i_want_this_folder\Office15"
And WINWORD.EXE is in "f:\i_want_this_folder\Office15"

It means that in our case " f:\i_want_this_folder", " C:\Program Files " and "C:\Program Files (x86)" are not correlated with operation system. They are the user choices.

Thus, when installer gets value from
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Word\InstallRo
ot\Path it must not distort the value.

Leonid

-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Steven Ogilvie
Sent: Wednesday, May 25, 2016 5:18 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

Classification: Public
Your still not understanding...

A 32 bit MSI cannot install to a 64 bit path (i.e. c:\program files) wix will change the path on the fly to c:\program files (x86)

YOU must either create a 32 bit and a 64 bit MSI or just a 64 bit MSI (compile as bitness you want) x86 or x64

End of story...

Steve




This message has been marked as Public by Steven Ogilvie on May 25, 2016
10:19:54 AM.
The above classification labels were added to the message by TITUS Message Classification.For More information visit www.titus.com.
-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Leonid Maliutin
Sent: May 25, 2016 10:11 AM
To: 'WiX Toolset Users Mailing List' <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

Steve

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Word\InstallRo
ot\Path  is user parameter.
The user choose it when the users fill it in "Program Path" field of Microsoft Office installer. See 001.png. And this value WiX must check.

Leonid


-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Steven Ogilvie
Sent: Wednesday, May 25, 2016 4:54 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

Classification: Public
YES because you are running a 32 bit MSI

You are compiling the MSI as a 32 bit MSI which CANNOT install to a 64 bit path...

Either compile as 64 bit or create 2 MSI's one 32 bit (for 32 bit OS's) and the other 64 bit for 64 bit OS's

Steve




This message has been marked as Public by Steven Ogilvie on May 25, 2016
9:56:01 AM.
The above classification labels were added to the message by TITUS Message Classification.For More information visit www.titus.com.
-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Yandex Mail
Sent: May 25, 2016 9:50 AM
To: 'WiX Toolset Users Mailing List' <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

The problem is not in installation process process.

Problem is that WiX gets the user setting value "C:\Program Files\Microsoft Office\root\Office15\" and implements it as "C:\Program Files (x86)\Microsoft Office\root\Office15\". WiX distorts the user value.


-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Rob Mensching
Sent: Wednesday, May 25, 2016 4:40 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

The Windows Installer will rewrite ProgramFilesFolder paths to "help" x86 packages install to the correct location.

_____________________________________________________________
 Short replies here. Complete answers over there: http://www.firegiant.com/


-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Yandex Mail
Sent: Wednesday, May 25, 2016 6:35 AM
To: 'WiX Toolset Users Mailing List' <wix-users at lists.wixtoolset.org>
Subject: Re: [wix-users] "Program file" is replaced by "Program file (x86)"
[P]

Hi Steve

Please see my description in first message.

Also you can see the description here
https://github.com/wixtoolset/issues/issues/5305
I do not know can we send message.

I create installer x86.
And it has the condition. It must check that the user has Microsoft Word 2013.

I use the standard code:
<Property Id="HOSTPATH">
  <RegistrySearch Id="RegSearch_HOSTEXE" Root="HKLM"
Key="SOFTWARE\Microsoft\Office\15.0\Word\InstallRoot" Name="Path"
Type="directory">
    <FileSearch Name="WINWORD.EXE" />
  </RegistrySearch>
</Property>
<Condition Message="!(loc.HostConditionMessage)"><![CDATA[Installed OR HOSTPATH]]></Condition>

This condition does not work on Windows x64 with Microsoft Word x86.

I researched the user computer and found that Word x86 is set in "C:\Program Files\Microsoft Office\root\Office15\".
And, accordingly, in key
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Office\15.0\Word\InstallRo
ot Path value has "C:\Program Files\Microsoft Office\root\Office15\"

I got procmon.exe and checked what was going on.

The install process can try open "C:\Program Files (x86)\Microsoft Office\root\Office15\", although it should open "C:\Program Files\Microsoft Office\root\Office15\" folder.

Why does it change from "Program Files" to "Program Files (x86)"?

----
Leonid

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


More information about the wix-users mailing list