Yes,
Attached is the zip folder that contains:
1       ExcelAddin.wixproj - WIX setup project file
2       PreBuildEventsOfWixProject.txt - text file, that contains pre build 
event of the setup project (you can find those in project file also)
3       All "*.wxs" and ".xslt" files of the project

Notice that the following files are result of heat.exe work:
RegistryKeysForCOM1.wxs
RegistryKeysForCOM2.wxs
AddinFiles.wxs

And I want to clarify my question once again. 
I want to know what is the exact list of things that I have to 
do/umplement/unclude in my WIX setup,
in order to deploy VSTO add-in for Excel 2007/2010/2013. And it is important to 
add that my add-in is working with external applications(explained in initial 
question), since this fact adds a lot to deployment...

You see, if you will tell me to change some "A" in my .wxs file to "B" I will 
be happy to deploy the add-in, 
but I will probably have problems with making another setup for next version 
later. So, I want to understand the "why" part first, and then be able to do 
the "how" part.

Many thanks,
Artem 

-----Original Message-----
From: Bo Zhang [fabbricadigitale] [mailto:b.zh...@fabbricadigitale.it] 
Sent: Wednesday, March 12, 2014 11:03
To: General discussion about the WiX toolset.
Subject: [WiX-users] R: How to install VSTO Excel add-in that use dll with 
COM-visible objects?

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


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

Reply via email to