2013-09-24 5 views
3

У меня есть каталог с одним файлом: Iesi.Collections.dll.Wix heat.exe странный вывод

Когда я запускаю следующую команду:

heat.exe dir D:\MyDir -cg References -srd -o D:\Product.wxs -nologo -gg -g1 -dr INSTALLFOLDER 

я получил очень странный вывод. Может быть, это странно только для меня, поэтому, пожалуйста, объясните мне это. Почему я получаю эти значения реестра? Я получаю тот же результат для любых сторонних dll, таких как MassTransit или RabbitMQ.

Ожидаемый результат:

<?xml version="1.0" encoding="utf-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Fragment> 
     <DirectoryRef Id="INSTALLFOLDER" /> 
    </Fragment> 
    <Fragment> 
     <ComponentGroup Id="References"> 
      <Component Id="cmpAD8551805C0E384D4FD6CD718C5E8381" Directory="INSTALLFOLDER" Guid="4253B9B4-21E8-40C8-A71A-A8308BD96F3C"> 
       <File Id="fil1300C7FBD2C9D42B5651E43A08F7DA1E" KeyPath="yes" Source="SourceDir\Iesi.Collections.dll" /> 
      </Component> 
     </ComponentGroup> 
    </Fragment> 
</Wix> 

Токовый выход:

<?xml version="1.0" encoding="utf-8"?> 
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 
    <Fragment> 
     <DirectoryRef Id="INSTALLFOLDER" /> 
    </Fragment> 
    <Fragment> 
     <ComponentGroup Id="References"> 
      <Component Id="cmpAD8551805C0E384D4FD6CD718C5E8381" Directory="INSTALLFOLDER" Guid="4253B9B4-21E8-40C8-A71A-A8308BD96F3C"> 
       <Class Id="{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}" Context="InprocServer32" Description="Iesi.Collections.ListSet" ThreadingModel="both" ForeignServer="mscoree.dll"> 
        <ProgId Id="Iesi.Collections.ListSet" Description="Iesi.Collections.ListSet" /> 
       </Class> 
       <Class Id="{09A2D117-B7B7-3905-88A7-AB20EE344B9F}" Context="InprocServer32" Description="Iesi.Collections.HashedSet" ThreadingModel="both" ForeignServer="mscoree.dll"> 
        <ProgId Id="Iesi.Collections.HashedSet" Description="Iesi.Collections.HashedSet" /> 
       </Class> 
       <Class Id="{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}" Context="InprocServer32" Description="Iesi.Collections.HybridSet" ThreadingModel="both" ForeignServer="mscoree.dll"> 
        <ProgId Id="Iesi.Collections.HybridSet" Description="Iesi.Collections.HybridSet" /> 
       </Class> 
       <Class Id="{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}" Context="InprocServer32" Description="Iesi.Collections.SortedSet" ThreadingModel="both" ForeignServer="mscoree.dll"> 
        <ProgId Id="Iesi.Collections.SortedSet" Description="Iesi.Collections.SortedSet" /> 
       </Class> 
       <File Id="fil1300C7FBD2C9D42B5651E43A08F7DA1E" KeyPath="yes" Source="SourceDir\Iesi.Collections.dll" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32\1.0.1.0" Name="Class" Value="Iesi.Collections.ListSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32\1.0.1.0" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32\1.0.1.0" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32\1.0.1.0" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32" Name="Class" Value="Iesi.Collections.ListSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{0436B9AC-9C09-3DF4-B3E9-AA70B658FB39}\InprocServer32" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32\1.0.1.0" Name="Class" Value="Iesi.Collections.HashedSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32\1.0.1.0" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32\1.0.1.0" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32\1.0.1.0" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32" Name="Class" Value="Iesi.Collections.HashedSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{09A2D117-B7B7-3905-88A7-AB20EE344B9F}\InprocServer32" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32\1.0.1.0" Name="Class" Value="Iesi.Collections.HybridSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32\1.0.1.0" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32\1.0.1.0" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32\1.0.1.0" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32" Name="Class" Value="Iesi.Collections.HybridSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{6B58196F-44FD-3EE1-BF83-AEBAABE958DA}\InprocServer32" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\Implemented Categories\{62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}" Value="" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32\1.0.1.0" Name="Class" Value="Iesi.Collections.SortedSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32\1.0.1.0" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32\1.0.1.0" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32\1.0.1.0" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32" Name="Class" Value="Iesi.Collections.SortedSet" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32" Name="Assembly" Value="Iesi.Collections, Version=1.0.1.0, Culture=neutral, PublicKeyToken=aa95f207798dfdb4" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32" Name="RuntimeVersion" Value="v2.0.50727" Type="string" Action="write" /> 
       <RegistryValue Root="HKCR" Key="CLSID\{DD9A864F-8AA2-3DF8-880B-6D38E581E44A}\InprocServer32" Name="CodeBase" Value="file:///[#fil1300C7FBD2C9D42B5651E43A08F7DA1E]" Type="string" Action="write" /> 
      </Component> 
     </ComponentGroup> 
    </Fragment> 
</Wix> 

EDIT: Возможно дубликата: How to avoid unnecessary tags when use Heat in wix

+2

Поставка 'heat.exe' с помощью команд командной строки' -sreg' и '-scom'. См. 'Heat.exe -?' Для получения дополнительных опций. –

+0

Да, глупо мне не читать всю документацию. Не могли бы вы поместить свой комментарий и ответить, чтобы я мог отметить его? – mynkow

ответ

6

Вы должны поставить heat.exe с -sreg (подавляют сбор реестра) ап d -scom (подавление COM-элементов). Дополнительную информацию см. В разделе heat.exe -?.

Смежные вопросы