I have the following preprocessor variable settings being configured which I 
then use to set all my component win64 values using the Win64="$(var.Win64)" 
approach shown below.   I've tested this previously in the cases where I use 
$(var.ProgramFilesFolder) which was resulting in my service successfully being 
installed into %programfiles% versus %programfiles(x86)% on x64 hosts.   
Looking at my verbose logs I'm not finding any "substitution" messages.    Does 
what I have below give rise to any thoughts on how I could be getting the 
unexpected result I'm getting?

<?ifndef TargetPlatform ?>
    <?define TargetPlatform = "x64" ?>
    <!--<?define TargetPlatform = "intel" ?>-->  <!-- == x86 -->
<?endif?>

<?if $(var.TargetPlatform) = "x64" ?>
    <?define ProcessorArchitecture = "amd64" ?>
    <?define ProcessorType = "x64" ?>
    <?define ProgramFilesFolder = "ProgramFiles64Folder" ?>
    <?define ProgramFilesFolderX86 = "ProgramFilesFolder" ?>
    <?define SystemFolder = "System64Folder" ?>
    <?define SystemFolderX86 = "SystemFolder" ?>
    <?define SoftwareKey = "Software" ?>
    <?define SoftwareKeyX86 = "Software\Wow6432Node" ?>
    <?define Win64 = "yes" ?>
<?else?>
    <?define ProcessorArchitecture = "x86" ?>
    <?define ProcessorType = "x86" ?>
    <?define ProgramFilesFolder = "ProgramFilesFolder" ?>
    <?define ProgramFilesFolderX86 = "ProgramFilesFolder" ?>
    <?define SystemFolder = "SystemFolder" ?>
    <?define SystemFolderX86 = "SystemFolder" ?>
    <?define SoftwareKey = "Software" ?>
    <?define SoftwareKeyX86 = "Software" ?>
    <?define Win64 = "no" ?>
<?endif?>

<Component Id="Site1Vdir3" Guid="E89BB697-4C52-4835-BD40-49FD100261B0" 
Win64="$(var.Win64)">
    <File Id="InstalledSite1Vdir3.txt" Name="InstalledSite1Vdir3.txt" 
Source="Resources\InstalledComponent.txt" KeyPath="yes" />

    <File Id="SampleEventingService.svc" Name="SampleEventingService.svc" 
Source="$(var.MSSolveSampleWCFProvider.ProjectDir)SampleEventingService.svc"/>
    <File Id="Site1Vdir3Web.config" Name="Web.config" 
Source="$(var.MSSolveSampleWCFProvider.ProjectDir)Web.config"/>

    <RegistryKey Root="HKLM" Key="$(var.SoftwareKeyX86)\Microsoft\Microsoft SQL 
Server\Services\NotificationServices\Instances\EventingMSSolve">
    <RegistryKey Root="HKLM" Key="Software\Wow6432Node\Microsoft\Microsoft SQL 
Server\Services\NotificationServices\Instances\EventingMSSolve">
        <RegistryValue Name="DBServer" Type="string" Value="[DATABASEHOST]" />
        <RegistryValue Name="Version" Type="string" Value="9.0.242" />
    </RegistryKey>


From: Bob Arnson [mailto:[EMAIL PROTECTED]
Sent: Wednesday, April 16, 2008 8:41 PM
To: Robert O'Brien
Cc: 'wix-users@lists.sourceforge.net'
Subject: Re: [WiX-users] <RegistryKey Root="HKLM" Key="Software\Wow6432Node\... 
keeps getting provisioned under HKLM\Software\... path

Robert O'Brien wrote:
I have the following component contained registry key & value settings defined. 
  When I execute an msi with this setting in place on w03 or w08 x64 installs 
instead of the key and values being written out to 
HKLM\Software\Wow6432Node\... they keep getting provisioned under 
HKLM\Software\...

Check a verbose log; you'll likely see "substitution" messages. Only 64-bit 
components can write to Wow6432Node so MSI redirects them for 32-bit components.


--

sig://boB

http://joyofsetup.com/

From: Robert O'Brien
Sent: Wednesday, April 16, 2008 3:29 PM
To: wix-users@lists.sourceforge.net
Subject: <RegistryKey Root="HKLM" Key="Software\Wow6432Node\... keeps getting 
provisioned under HKLM\Software\... path

I have the following component contained registry key & value settings defined. 
  When I execute an msi with this setting in place on w03 or w08 x64 installs 
instead of the key and values being written out to 
HKLM\Software\Wow6432Node\... they keep getting provisioned under 
HKLM\Software\...

<RegistryKey Root="HKLM" Key="Software\Wow6432Node\Microsoft\Microsoft SQL 
Server\Services\NotificationServices\Instances\EventingMSSolve">
  <RegistryValue Name="DBServer" Type="string" Value="[DATABASEHOST]" />
  <RegistryValue Name="Version" Type="string" Value="9.0.242" />
</RegistryKey>

Question - am I doing something dumb here that would cause me to be getting 
this result?


-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to