2013-09-24 72 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 

我真是奇怪的輸出。可能只是對我而言很奇怪,所以請給我解釋一下。爲什麼我得到這些註冊表值?對於像MassTransit或RabbitMQ這樣的第三方DLL,我會得到相同的結果。

預期輸出:

<?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> 

編輯:可能重複:How to avoid unnecessary tags when use Heat in wix

+2

用'-sreg'和'-scom'命令行開關提供'heat.exe'。請參閱'heat.exe - ?'以獲得更多選擇 –

+0

是的,愚蠢的我沒有閱讀整個文檔。你能把你的評論和答案,以便我可以標記嗎? – mynkow

回答

6

應提供heat.exe-sreg(抑制註冊表收穫)的d -scom(抑制COM元件採集)命令行開關。有關更多選項,請參見heat.exe -?