Could you share your WiX code instead of VSTO project?

-----Messaggio originale-----
Da: Verbuk, Artem [mailto:artem.ver...@intel.com] 
Inviato: mercoledì 12 marzo 2014 09.18
A: wix-users@lists.sourceforge.net
Oggetto: [WiX-users] How to install VSTO Excel add-in that use dll with 
COM-visible objects?

Hi guys,

I really hope to get some help, since I am trying to do something for 3 days 
already and I had no luck to accomplish what I need to.



I have a VSTO Excel 2010 add-in created using VSTO template in VS2010. The code 
of an add-in is very simple:


    public partial class ThisAddIn
    {
        private IAddinEngine _engine;

        private void ThisAddIn_Startup(object sender, System.EventArgs e)
        {
        }

        private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
        {
        }

        private void InternalStartup()
        {
            Startup += ThisAddIn_Startup;
            Shutdown += ThisAddIn_Shutdown;
        }

        protected override object RequestComAddInAutomationService()
        {
            return _engine ?? (_engine = new 
AddinEngine(Globals.ThisAddIn.Application));
        }
    }


This add-in project compiles to three files:

Addin.dll

Addin.dll.manifest

Addin.vsto



The IAddinEngine interface and AddinEngine class are defined in another C# 
class library project, that is compiled into AddinEngine.dll



The class has the following attributes:



[ComVisible(true),GuidAttribute("B4CF084F-6CBB-4D9B-8220-AE9DB014E944")]
[ProgId("LogManagerExcelAddInEngineProgID")]
[ClassInterface(ClassInterfaceType.None)]
public class AddinEngine : StandardOleMarshalObject, IAddinEngine {
       //implementation of IAddinEngine
}




And the interface defined as follows:


[ComVisible(true)]
[InterfaceType(ComInterfaceType.InterfaceIsDual)]
public interface IAddinEngine
{
//some functions that I can call from Winforms application }

I have tried a lot of things according to many forums, but I don't have clear 
list of things that I have to do in order to deploy the add-in correctly.
In my WIX setup I do the following:

1)      Create registry keys for Excel to find the add-in 
(http://msdn.microsoft.com/en-us/library/vstudio/bb386106(v=vs.100).aspx)

2)      Copy all dlls

3)      Use regasm.exe to create Addin.reg/AddinEngine.reg file for Addin.dll 
and AddinEngine.dll

4)      Use heat.exe to harvest those two ".reg" files and create COMObjects.wxs

5)      Copy ".tlb" files that I create from Addin.dll and AddinEngine.dll 
using regasm.exe .tlb

6)      Copy Addin.vsto and Addin.dll.manifest
By the way, I am pretty sure that I take correct files to target machine, and I 
am sure that registry keys(that I do create) are correct, since I have working 
setup made with VS2010 setup project and I can see what it creates on target 
machine. For example, those ".tlb" files, I am not sure that I need to bring 
them with my WIX setup, but I do since VS2010 setup does so.
I think I miss some actions/registry keys for COM objects.. I used Orca to see 
what VS2010 setup does, and I even decompiled it with dark.exe but the results 
I can see contain a lot of junk. And anyway, I need to be able to create my 
setup without VS2010 setup, since I want to work in VS2012 and there is no 
setup project there.. so I have to understand how to deploy VSTO Excel add-in, 
that is callable from external applications , using WIX toolset.

Excuse me if I send this mail to wrong address, I am using WIX mailing list for 
the first time.
Excuse me for long question and errors in my English :) And I can provide 
additional details if they are required.

Regards,
Artem
---------------------------------------------------------------------
A member of the Intel Corporation group of companies

This e-mail and any attachments may contain confidential material for the sole 
use of the intended recipient(s). Any review or distribution by others is 
strictly prohibited. If you are not the intended recipient, please contact the 
sender and delete all copies.
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the 
definitive new guide to graph databases and their applications. Written by 
three acclaimed leaders in the field, this first edition is now available. 
Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to