I've yet to roll this into production but under my circumstances I went
with an alternate option of using Application and Assembly manifests.
This will not work with out of process (exe) COM servers, but it will
work with both native and managed assemblies.

The manifests leverage on SxS / RegFree COM, allowing your application
to create a COM object which doesn't even exist within the registry.
I've written 2 small utility tools as well which allow me to generate
manifest files via mt.exe (from the platform SDK), and for native DLL's
use the output and do a 2 step process (the first tool is a step child
of regsvr32, but using registry redirection it allows a non admin user
to register a non-aware DLL as a per user DLL) of registering the COM
object, and then calling a second tool which parses the manifest looking
for CoClasses without ProgID's and replaces them with the result from
ProgIDFromCLSID.

If you go with the manifest approach, the immediate benefit is no need
for any registry keys for the installer with respect to the COM object,
and it makes per user and per machine installs less conflicting.

-----Original Message-----
From: Anil Patel [mailto:apatel...@googlemail.com] 
Sent: Wednesday, July 27, 2011 4:39 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] com registration

Hi Daniel,

1) For a COM dll, heat should generate the appropriate registry data.

2) For a COM EXE server, heat will not generate the the registry data
but
you can do the following.:

a) Use RegSpy2 to extract the registry data into a reg file.

 So if my COM exe is called TestCOM.exe, you would issue the command
 Regspy2.exe TestCOM.exe /RegServer > TestCOM.reg
The Regspy2 utility captures the COM registration data and adds it to
TestCOM.reg file.

b) Then use Heat.exe against the reg file as follows ->  Heat.exe
TestCOM.reg -gg -g1 -out TestCOM.wxs

Google for RegSpy2.

Thanks,
Anil.


On Tue, Jul 26, 2011 at 6:31 PM, Dariel Marlow <dmar...@gmail.com>
wrote:

> I'm using heat to generate the fragment for my COM object. After
installing
> the MSI, the CLSID entries are not created in the registry. Should I
add
> Registry elements to my WXS file manually or am I doing something
wrong?
>
>
>
> Thanks,
>
>
>
> Dariel
>
>
>
------------------------------------------------------------------------
------
> Magic Quadrant for Content-Aware Data Loss Prevention
> Research study explores the data loss prevention market. Includes
in-depth
> analysis on the changes within the DLP market, and the criteria used
to
> evaluate the strengths and weaknesses of these DLP solutions.
> http://www.accelacomm.com/jaw/sfnl/114/51385063/
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------
------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to