Wix designer not creating all registry keys and values

Add-in Express™ Support Service
That's what is more important than anything else

Wix designer not creating all registry keys and values
 
Mads




Posts: 28
Joined: 2010-10-22
Hi

I'm using WiX designer to create an MSI of a VSTO project, but the registry keys and values are not all created correctly. I cannot find any errors in the Application Event logs, only 2 entries saying that it installed successfully or with error code 0. The odd thing is that the values under they key "SOFTWARE\Wow6432Node\Microsoft\Office\Outlook\Addins\FakturaFlow Outlook Addin" are correctly installed, but the values under "SOFTWARE\Microsoft\Office\Outlook\Addins\FakturaFlow Outlook Addin" are not. I have tried installing on 2 different Windows 8.1 64bit machines, and I have tried to clean the project and rebuilding it again. I have tried to remove all keys and values in the designer, and recreate them again.

Are there any logs that can tell what might go wrong?


 <ComponentGroup Id="RegistryGroup">
      <Component Id="_D637F053_F36C_4003_B8AC_7E26978DDDDE" Guid="97452C1F-2406-4BAE-86FF-969936E97A23" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWARE" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_6845DBF3_1E9B_4BEE_956A_CE440A6A530E" Guid="6ABC5336-2B5E-4101-A635-4C9A03FF9982" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREMicrosoft" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_642BCDA3_A0A2_47FD_BBBF_E31E9B57A7BC" Guid="0E6B5D2E-567A-4905-BD5A-3E6574B1E5E2" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREWow6432Node" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_E273464A_0C4F_404E_8A50_3323D1B19ED8" Guid="93EA4BE4-8CDA-432B-9912-DC6F2DE3DC39" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoft" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_28ABDBD9_58B0_49D6_AF14_A0B5CE5A9E29" Guid="4D580BA2-72C5-4338-B875-0091B51ACA8F" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOffice" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_D5C856CF_A733_471D_8D43_306A7CF19D1F" Guid="228722DE-A8A0-44DB-A0AD-B4BC10C28362" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlook" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_3C26082A_0F8C_4ED5_847E_DB2A31961DEA" Guid="AA57229D-9A71-4592-A645-298BEAABA07B" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlookAddins" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_030B2058_3241_4DB8_A1CE_E2885ACAC525" Guid="10E355AE-ED86-484B-A860-78A40CBF2D52" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes" />
      </Component>
      <Component Id="_0464638B_1D1A_4285_9DB7_D2F9B9686A3C" Guid="6DCB09E9-121F-4EAB-9288-9A4923358AB2" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="string" Name="Description" Value="FakturaFlow Outlook Addin" />
      </Component>
      <Component Id="_68E87872_2CAC_41C3_9F7E_B84E52A454A0" Guid="536919FB-C504-4717-91D5-3FE3051C204E" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="string" Name="FriendlyName" Value="FakturaFlow Outlook Addin" />
      </Component>
      <Component Id="_6043313A_9AD8_47AA_A990_DD0235D8D007" Guid="A819A7F6-4D5D-45F6-9C61-ACE53AFEB3D4" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="integer" Name="LoadBehavior" Value="3" />
      </Component>
      <Component Id="_512B36AD_6DA6_4BC7_8624_E800A145FB6C" Guid="FB2DDA31-0A76-44AF-9FD6-103188501F4D" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREWow6432NodeMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="string" Name="Manifest" Value="[TARGETDIR]Outlook2007AddIn.vsto|vstolocal" />
      </Component>
      <Component Id="_BB095C65_ACCC_41E6_9C4C_3910158F679F" Guid="7485F3D4-498B-4EAB-AB23-F80F8C874448" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREMicrosoftOffice" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_BE3958E8_EB5B_47A9_AD01_9B708AF13C0B" Guid="8FC07D57-F33F-459A-9858-D09F8D76D2D8" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlook" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_3CB4A99B_8233_4617_BE28_A2166C94EF74" Guid="A3D1416E-5FE9-49B0-B4A8-3B5BD84F8B3B" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlookAddins" ForceCreateOnInstall="no" ForceDeleteOnUninstall="no" />
      </Component>
      <Component Id="_4BB2D078_2D16_47E9_896F_59C6735416A7" Guid="08DAC3D1-F555-4B22-AF23-C1E926748D4C" Transitive="no" Directory="TARGETDIR">
        <RegistryKey Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" ForceCreateOnInstall="yes" ForceDeleteOnUninstall="yes" />
      </Component>
      <Component Id="_E6C69F00_2D84_4675_AFAB_17A90FC35C7C" Guid="B1B86AF1-71DD-4757-87B1-C9A8ABAD68C3" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="string" Name="Description" Value="FakturaFlow Outlook Addin" />
      </Component>
      <Component Id="_36BD6E3D_4D73_4CCD_94F3_77BB5621982F" Guid="FD2C2ECD-486B-4854-A76F-9A60A7E9EABA" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="string" Name="FriendlyName" Value="FakturaFlow Outlook Addin" />
      </Component>
      <Component Id="_D2C4B6BB_DC34_47BE_894C_C9710B36D3E6" Guid="58D34F19-7FAC-4DD2-AD25-D5F64D209C42" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="integer" Name="LoadBehavior" Value="3" />
      </Component>
      <Component Id="_FD78A147_911B_4A0D_BF78_C8109A7900C1" Guid="97FADBF5-F765-41FE-80E4-A1ACC82FAE04" Transitive="no" Directory="TARGETDIR">
        <RegistryValue Root="HKLM" Key="SOFTWAREMicrosoftOfficeOutlookAddinsFakturaFlow Outlook Addin" Type="string" Name="Manifest" Value="[TARGETDIR]Outlook2007AddIn.vsto|vstolocal" />
      </Component>
 </ComponentGroup>


--
Mads
Posted 13 Oct, 2014 03:34:06 Top
Sergey Grischenko


Add-in Express team


Posts: 7187
Joined: 2004-07-05
Hi Mads,

It happens due to the registry redirection. 32-bit process can't access 64-bit registry. If you switch to 64-bit, you will not have this redirection. It can be done in the Package element of wix setup (Platform='x64').
You can read more about the registry redirection here:
http://msdn.microsoft.com/en-us/library/aa384232(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/aa384129%28VS.85%29.aspx
Posted 13 Oct, 2014 05:08:20 Top
Mads




Posts: 28
Joined: 2010-10-22
Setting
Platform="x64"
but it is still running as a 32-bit application, and thus cannot create the keys.
Posted 13 Oct, 2014 05:32:01 Top
Sergey Grischenko


Add-in Express team


Posts: 7187
Joined: 2004-07-05
Do you still use 'Wow6432Node' in keys' names? If so, please remove keys with 'Wow6432Node'.
Also please add Win64="yes" to the parent component of your registry entries.
Posted 13 Oct, 2014 06:52:46 Top
Mads




Posts: 28
Joined: 2010-10-22
Thanks, that creates the keys and values. Does that mean that I am unable to use the same project for both 32- and 64-bit machines?
Posted 14 Oct, 2014 04:43:34 Top
Sergey Grischenko


Add-in Express team


Posts: 7187
Joined: 2004-07-05
Hi Mads,

You can use x86 setup to support both 32 and 64-bit registry. But in this case you need to modify the registry from a custom action. You can use RegCreateKeyEx Win API function to access 64-bit registry from x86 process (see KEY_WOW64_64KEY value on Registry Key Security and Access Rights page).

You can read more about this function here:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724844(v=vs.85).aspx
Posted 14 Oct, 2014 12:04:56 Top