From: Ekbote, Rahul
Sent: Tuesday, June 16, 2009 1:52 PM
To: General discussion for Windows Installer XML toolset.
Subject: Needs to understand how wix register the .dll or .ocx?
Hi,
I want to understand how wix registers the components in registry.
When I run the heat .exe for files it generates code like.
<Component Id="cmpD84773041B2997E366AE89770EECD1F5"
Directory="dir002788116533422330D6397E8731D012"
Guid="{56DA410A-4B54-4E60-8996-56E4E6D4CD87}" NeverOverwrite="yes"
Permanent="yes">
<File Id="fil0A16D5712A97B1C9AD41B8BE60E4DC48"
KeyPath="yes" Source="ALMEngine\AlgFormulaEditor.dll">
<TypeLib Id="{6480C539-3A84-4993-ACD5-1452729D4C68}"
Description="AlgFormulaEditor 1.0 Type Library"
HelpDirectory="dir002788116533422330D6397E8731D012" Language="0"
MajorVersion="1" MinorVersion="0">
<Class
Id="{98E7AA54-DE51-4E4B-95F1-93BA65C709D4}" Context="InprocServer32"
Description="AlgFormulaEdit Class" ThreadingModel="apartment"
Version="1.0" Insertable="yes" Programmable="yes" Control="yes">
<ProgId
Id="AlgFormulaEditor.AlgFormulaEdit.1" Description="AlgFormulaEdit
Class">
<ProgId
Id="AlgFormulaEditor.AlgFormulaEdit" Description="AlgFormulaEdit Class"
/>
</ProgId>
</Class>
<Class
Id="{AD0009B9-FB04-47A9-8727-6E5582485E16}" Context="InprocServer32"
Description="FormulaArrayEdit Class" ThreadingModel="apartment"
Version="1.0" Insertable="yes" Programmable="yes" Control="yes">
<ProgId
Id="AlgFormulaEditor.FormulaArrayEdit.1" Description="FormulaArrayEdit
Class">
<ProgId
Id="AlgFormulaEditor.FormulaArrayEdit" Description="FormulaArrayEdit
Class" />
</ProgId>
</Class>
</TypeLib>
</File>
<RegistryValue Root="HKCR"
Key="CLSID\{98E7AA54-DE51-4E4B-95F1-93BA65C709D4}\MiscStatus\1"
Value="131473" Type="string" Action="write" />
<RegistryValue Root="HKCR"
Key="CLSID\{98E7AA54-DE51-4E4B-95F1-93BA65C709D4}\MiscStatus" Value="0"
Type="string" Action="write" />
<RegistryValue Root="HKCR"
Key="CLSID\{98E7AA54-DE51-4E4B-95F1-93BA65C709D4}\ToolboxBitmap32"
Value="[#fil0A16D5712A97B1C9AD41B8BE60E4DC48], 102" Type="string"
Action="write" />
<RegistryValue Root="HKCR"
Key="CLSID\{AD0009B9-FB04-47A9-8727-6E5582485E16}\MiscStatus\1"
Value="131473" Type="string" Action="write" />
<RegistryValue Root="HKCR"
Key="CLSID\{AD0009B9-FB04-47A9-8727-6E5582485E16}\MiscStatus" Value="0"
Type="string" Action="write" />
<RegistryValue Root="HKCR"
Key="CLSID\{AD0009B9-FB04-47A9-8727-6E5582485E16}\ToolboxBitmap32"
Value="[#fil0A16D5712A97B1C9AD41B8BE60E4DC48], 105" Type="string"
Action="write" />
<RegistryValue Root="HKCR" Key="Interface" Value=""
Type="string" Action="write" />
</Component>
I want to understand how this code registers the component.
How it is different from using regsvr32.exe to register the component?
NeverOverwrite="yes" Permanent="yes" are these are the right attributes
if I don't want to remove/unregister the component.
Thanks,
Rahul Ekbote
Senior Software Engineer * SunGard * ALM * Bacware *
------------------------------------------------------------------------------
Crystal Reports - New Free Runtime and 30 Day Trial
Check out the new simplified licensing option that enables unlimited
royalty-free distribution of the report engine for externally facing
server and web deployment.
http://p.sf.net/sfu/businessobjects
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users