The other thing to worry about is that RegAsm on an assembly will generate a 
type library and register it. RegAsm /regfile will create you a reg file but 
will not generate any type library Interface entries. Whether this matters or 
not depends on your COM interfaces, but if it does matter then an explicit type 
library needs generating for Heat etc to create HKCR\Interface entries for. 

Phil Wilson 

-----Original Message-----
From: Christopher Painter [mailto:chr...@deploymentengineering.com] 
Sent: Monday, June 14, 2010 8:55 AM
To: General discussion for Windows Installer XML toolset.
Cc: Elfe Xu
Subject: Re: [WiX-users] Question about register .net COM object

regasm /regfile doesn't always work because if you have any user defined 
register functions they will not be in the regfile.   From what I've seen of 
heat, it's not vunerable to this extraction problem.  InstallShield does have 
this problem.

Personally I wrote a little UI over  heat that watches a directory for changes 
and spits out a wix fragment.  I just scrape up the harvested XML and paste it 
into my installer source.



----- Original Message ----
From: "gree...@cox.net" <gree...@cox.net>
To: General discussion for Windows Installer XML toolset. 
<wix-users@lists.sourceforge.net>
Cc: Elfe Xu <elf...@microsoft.com>
Sent: Sat, June 12, 2010 2:48:58 PM
Subject: Re: [WiX-users] Question about register .net COM object

I saw regasm in the CustomAction element, so I am assuming  that this is a .NET 
assembly exposing COM objects.  Use the /reg option to create a .reg file 
containing all of the registry settings.  Then you can manually enter these 
values into the Wix projects.  

Wix has some tools that can automate some of this, but check the results and 
make sure what you have is correct.  What you may need to do is run a CA to set 
the Codebase value in the registry for the installed COM .NET assembly..  The 
value regasm puts in the .REG file will not be value for the install.

Regards,
greenaj


---- Elfe Xu <elf...@microsoft.com> wrote: 
> Hi,
> 
> I'm trying a CA
> <CustomAction Id="RegT"  ExeCommand="blablabla\RegAsm.exe T.dll" 
> Execute="immediate" />
> and found it can only success if I make the CA run after InstallFinalized. 
> Otherwise, it will fail.
> 
> I think the right way is to use Class element, but I just cannot make the 
> result the same as I execute regasm.exe.
> Here is my trying:
>          <Component Id ="TestComponent" 
>Guid="D75C79A1-83C9-467D-89FB-4B7E081401CE" Win64="$(var.USEWIN64)" >
>            <File  Id="TestCOM" Assembly=".net" Name="Test.dll" DiskId="1" 
>Source="..\..\TestCOM.dll" KeyPath="yes">
>              <Class Id="CE13T9EC-3BE1-4292-89C4-243ERF42967B"
>                      Description="test com"
>                      ThreadingModel="both"
>                      Context="InprocServer32"
>                <ProgId Id="MyTestCOM" />
>              </Class>
>            </File>
>          </Component>
> I just cannot find way to set lots of other stuffs, like
> Implemented Categories with value {62C8FE65-4EBB-45e7-B440-6E39B2CDBF29}
> The Assembly, Class, RuntimeVersion under InprocServer32.
> I want to set the ForeignServer with mscoree.dll, but wix says it cannot be 
> used under <File>.
> 
> I guess I might doing totally wrong. Anyone can give me a sample of how to do 
> the register?
> 
> Another question is: when I want to add the .net assembly into wix project 
> reference, why I get the error of "Test.dll could not be added. Please make 
> sure that the file is accessible, and that it is a valid WiX reference." 
> Because of this failure, I can only add the file by the relevant path. Not 
> sure if it is a cause of the register failure.
> 
> Thanks,
> -Elfe
> ------------------------------------------------------------------------------
> ThinkGeek and WIRED's GeekDad team up for the Ultimate 
> GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
> lucky parental unit.  See the prize list and enter to win: 
> http://p.sf.net/sfu/thinkgeek-promo
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      

------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


*** Confidentiality Notice: This e-mail, including any associated or attached 
files, is intended solely for the individual or entity to which it is 
addressed. This e-mail is confidential and may well also be legally privileged. 
If you have received it in error, you are on notice of its status. Please 
notify the sender immediately by reply e-mail and then delete this message from 
your system. Please do not copy it or use it for any purposes, or disclose its 
contents to any other person. This email comes from a division of the Invensys 
Group, owned by Invensys plc, which is a company registered in England and 
Wales with its registered office at Portland House, Bressenden Place, London, 
SW1E 5BF (Registered number 166023). For a list of European legal entities 
within the Invensys Group, please go to 
http://www.invensys.com/legal/default.asp?top_nav_id=77&nav_id=80&prev_id=77. 
You may contact Invensys plc on +44 (0)20 7821 3848 or e-mail 
inet.hqhelpd...@invensys.com. This e-mail and any attachments thereto may be 
subject to the terms of any agreements between Invensys (and/or its 
subsidiaries and affiliates) and the recipient (and/or its subsidiaries and 
affiliates).



------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to