0
votes

Configured the firebreath generated Wix files to accept additional files but have had no success

   <!-- Put Additional files here: -->
  <!-- example:-->
   <Component Id="test" Guid="{104ca7b7-f654-481f9f6a-9a5b5a39c93b}">
        <File Id="test" KeyPath="yes" Source="C:\location\test.dll" />
    </Component>


    <Feature Id="MainPluginFeature" Title="${FBSTRING_ProductName}" Level="1">
      <ComponentRef Id="InstallDirComp"/>
      <ComponentRef Id="PluginNameDirComp"/>
      <ComponentRef Id="CompanyDirComp"/>
      <ComponentGroupRef Id="PluginDLLGroup"/>          
      <ComponentRef Id="test"/>
    </Feature>

Errors: Error 8 error LGHT0204: ICE38: Component test installs to user profile. It must use a registry key under HKCU as its KeyPath, not a file.

I have tried the following but have ended up in errors,

  • changing the GUID back to *
  • adding directory=INSTALLDIR to the component
  • Moving the component outside of Directory

I tried reading various forums and Wix documentation is not of much help. What am I missing?

1

1 Answers

3
votes

To resolve the ICE38 you need to add a dummy registry key and set your file's KeyPath="no":

<Component Id="test" Guid="{104ca7b7-f654-481f9f6a-9a5b5a39c93b}">
   <File Id="test" KeyPath="no" Source="C:\location\test.dll" />
   <Registry Root=”HKCU” KeyPath=”yes” … />
</Component>