Hello,

I am trying to include a DirectX9 install from within my perUser MSI.
Everything works, however I am down to possible elevated permissions that
need to be accessed for the DirectX portion even though I have declared
InstallScope="perUser". I have a feeling that the DirectX installation
requires registry writes in HKLM but not sure. I am also running WiX v3.9 on
VS 2012.

Here is the DirectX part of my code:

    <Package InstallerVersion="200"
             Compressed="yes"
             Manufacturer="$(var.Mfg)"
             InstallScope="perUser"
             InstallPrivileges="limited" />

    <Feature Id="DirectXRedist"
             Title="DirectX9"
             AllowAdvertise="no"
             Display="hidden"
             Level="1">
      <ComponentGroupRef Id="DirectXComponents" />
    </Feature>

    <CustomAction Id="InstallDirectX"
                  FileKey="dxsetup.exe"
                  ExeCommand="/silent"
                  Execute="deferred"
                  Impersonate="no"
                  Return="check"/>

    <InstallExecuteSequence>
      <Custom Action="InstallDirectX" Before="InstallFinalize">
        <![CDATA[NOT REMOVE]]>
      </Custom>
    </InstallExecuteSequence>

    <UI>
      <ProgressText Action="InstallDirectX">Installing DirectX 9
Components</ProgressText>
    </UI>

  <Fragment>
    <ComponentGroup Id="DirectXComponents" Directory="DirectXRedist">
      <Component Id="DirectXComp" Guid="{MY- Guid }">
        <RegistryKey Root="HKCU"
                     Key="Software\$(var.Mfg)\$(var.ProductName)">
          <RegistryValue Type="string"
                         Name="dxsetup.exe"
                         Value="[DirectXRedist]dxsetup.exe"
                         KeyPath="yes" />
        </RegistryKey>
        <File Id='dxsetup.exe'
              Source='$(var.MainSourcePath)Resources\DirectX
Redist\dxsetup.exe'
              Checksum='yes'/>
        <File Id='dxupdate.cab'
              Source='$(var.MainSourcePath)Resources\DirectX
Redist\dxupdate.cab'/>
        <File Id='dxdllreg_x86.cab'
              Source='$(var.MainSourcePath)Resources\DirectX
Redist\dxdllreg_x86.cab'/>
        <File Id='dsetup.dll'
              Source='$(var.MainSourcePath)Resources\DirectX
Redist\dsetup.dll'/>
        <File Id='dsetup32.dll'
              Source='$(var.MainSourcePath)Resources\DirectX
Redist\dsetup32.dll'/>
        <File Id='Jun2010_d3dx9_43_x86.cab'
              Source='$(var.MainSourcePath)Resources\DirectX
Redist\Jun2010_d3dx9_43_x86.cab'/>
      </Component>
    </ComponentGroup>
  </Fragment>

Thank you for any help you can give.

- Paul



------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to