Skip to content

Generated components should be ICE-clean for per-user target directories #8633

@EvgenPervenenko

Description

@EvgenPervenenko

WiX Version

5.0.0

.NET or MSBuild or Visual Studio Version

Microsoft Visual Studio Community 2022 (64-bit) - Current Version 17.8.2

HeatWave Version

1.0.4

Windows Version

Windows 11 Pro 21H2

Repro Repo

No response

Repro Steps

Folder (in my example) contains some files
d:\TestFolder

  • folder1
  • folder2
    • test_file.txt
      -test_file.txt

Project Wix msi structure:

ExampleComponents.wxs

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
  <Fragment>
    <ComponentGroup Id="ExampleComponents" Directory="INSTALLFOLDER">
	  <Files Include="d:\TestFolder\\**" />
    </ComponentGroup>
  </Fragment>
</Wix>

Folders.wxs

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
  <Fragment>
    <StandardDirectory Id="AppDataFolder">
      <Directory Id="INSTALLFOLDER" Name="!(bind.Property.Manufacturer) !(bind.Property.ProductName)" />
    </StandardDirectory>
  </Fragment>
</Wix>

Package.wxs

<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
  <Package Name="Package1" Manufacturer="TODO Manufacturer" Version="1.0.0.0" UpgradeCode="73bfa418-131d-4c11-b8db-3357de780149">
    <MajorUpgrade DowngradeErrorMessage="DowngradeError" />

    <Feature Id="Main">
      <ComponentGroupRef Id="ExampleComponents" />
    </Feature>
  </Package>
</Wix>

Note: change in Folders.wxs to ProgramFiles6432Folder for example all works as expected project build without errors and files structure zipped into .msi

Actual Result

Build project result:

1>D:\Projects\Package1\Package1\ExampleComponents.wxs(4): error WIX0204: ICE38: Component fls4TA3WjWfn7DaNoJE3jCZLKGbPJs installs to user profile. It must use a registry key under HKCU as its KeyPath, not a file.
1>D:\Projects\Package1\Package1\ExampleComponents.wxs(4): error WIX0204: ICE38: Component flsbkUUD6Y2rdtC4RnYfRP86W8yvo4 installs to user profile. It must use a registry key under HKCU as its KeyPath, not a file.
1>D:\Projects\Package1\Package1\Folders.wxs(4): error WIX0204: ICE64: The directory INSTALLFOLDER is in the user profile but is not listed in the RemoveFile table.
1>D:\Projects\Package1\Package1\ExampleComponents.wxs(4): error WIX0204: ICE64: The directory dZGD2_IybCp2zKj7aBcB854Yokys is in the user profile but is not listed in the RemoveFile table.
1>D:\Projects\Package1\Package1\ExampleComponents.wxs(4): warning WIX1076: ICE91: The file 'fls4TA3WjWfn7DaNoJE3jCZLKGbPJs' will be installed to the per user directory 'dZGD2_IybCp2zKj7aBcB854Yokys' that doesn't vary based on ALLUSERS value. This file won't be copied to each user's profile even if a per machine installation is desired.
1>D:\Projects\Package1\Package1\ExampleComponents.wxs(4): warning WIX1076: ICE91: The file 'flsbkUUD6Y2rdtC4RnYfRP86W8yvo4' will be installed to the per user directory 'INSTALLFOLDER' that doesn't vary based on ALLUSERS value. This file won't be copied to each user's profile even if a per machine installation is desired.
1>Done building project "Package1.wixproj" -- FAILED.

Expected Result

Project built without error, all folder structure included into .msi

Acknowledgements

  • I acknowledge that this is a fully completed bug report. It is not a question or attempt to get help debugging my issue (because those should be sent to Discussions).

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions