I have a 32 bit application installing on 64 bit OS (Windows 7). Using the AppSearch and RegLocator tables I need to detect if a 64 bit prerequisite is installed. My 32 bit prerequisites are detected just fine but I am unable to detect if the 64 bit prerequisite is installed (MS Visual Studio Tools for Office Runtime 2010) Searching the registry for SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{guid}. The property never gets set.
2 Comments   [ - ] Hide Comments


  • Tricky one!

    I've not come across this scenario yet but as a first step, I'd try coming from the opposite direction, making the MSI target the 64-bit platform and then explicitly querying the Wow6432Node.

    Alternatively, you might explore a scripted approach using WMI. Start here http://msdn.microsoft.com/en-us/library/aa393067%28v=vs.85%29.aspx for details.
  • I was hoping to stay away from any scripting. Here is a snippet from the log. It appears that it is unable to read the registry. Hence the 1402.

    <log>Transforming table RegLocator.

    MSI (s) (6C:8C) [08:43:14:314]: PROPERTY CHANGE: Adding MSVC2010REDIST property. Its value is 'Microsoft Visual C++ 2010 x86 Redistributable - 10.0.40219'.
    MSI (s) (6C:8C) [08:43:14:314]: Transforming table RegLocator.

    MSI (s) (6C:8C) [08:43:14:314]: PROPERTY CHANGE: Adding MSVC2008REDIST property. Its value is 'Microsoft Visual C++ 2008 Redistributable - x86 9.0.30729.17'.
    MSI (s) (6C:8C) [08:43:14:314]: Transforming table RegLocator.

    MSI (s) (6C:8C) [08:43:14:314]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE32\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{4AE29B5C-87B1-3C4E-8E15-17B83BA745CB} 3: 2
    MSI (s) (6C:8C) [08:43:14:328]: Transforming table RegLocator.</log>

    What is involved in changing this vendor provided msi to target a 64 bit system?
Please log in to comment

Answer this question or Comment on this question for clarity



I have no idea what happened but somehow something got corrupted with the install.  Even without applying the transform I would still receive the Launch Condition error as if the transform was still being applied.  It's working now.

Answered 05/22/2014 by: joedown
Second Degree Brown Belt

Please log in to comment