Whenever I build the Add-in from Visual studio(2017 Community version),the add-in gets loaded in Outlook(2016) and functions as expected.But when I remove the add-in from Outlook and then try to install it using the .msi installer file the add-in doesn't gets loaded in the Outlook.
Anyone having any idea about this?
Related
how do I get my vsto to work on Excel without the settings of Visual Studio? im trying to add not valid. can you help me a solution for that
the file that I have
If you are trying to distribute a VSTO add-in, the target machines will need the VSTO runtime.
https://www.microsoft.com/en-us/download/details.aspx?id=48217
Its a long story. I had a simple VSTO excel solution that i build in VS 2005 and Excel 2003. Few years ago we upgraded to Excel 2010 and VS2010. The VSTO solution was upgraded to .xlsm file and everything worked fine.
Recently we upgraded to Office 2013 and VS2013. (Office 2010 was uninstalled and then Office 2013 was installed). I opened the VSTO project and it forcibly upgraded the solution. I published the new version which created the setup.exe in the publish folder. I install the new customization on my dev PC and then open the .xlsm file that was installed on c:\user\abc\appdata\local... on my dev machine and everything works fine.
However, when i install setup.exe on a user machine and open the .xlsm file, even though i dont get any errors, the customizations (buttons etc) are all greyed out. Its as if it didn't even install. I banged my head with this all day today and cant figure it out. PLEASE HELP.
Thank you in advance.
Tarun,
Make sure that all the required prerequsites were installed properly. See Deploying an Office Solution by Using Windows Installer or Deploying an Office Solution by Using ClickOnce for more information.
Also I'd suggest checking the COM Addins list in the application. Is it enabled?
Microsoft Office applications can disable add-ins that behave unexpectedly. If an application does not load your add-in, the application might have hard disabled or soft disabled your add-in.
Hard disabling can occur when an add-in causes the application to close unexpectedly. It might also occur on your development computer if you stop the debugger while the Startup event handler in your add-in is executing.
Soft disabling can occur when an add-in produces an error that does not cause the application to unexpectedly close. For example, an application might soft disable an add-in if it throws an unhandled exception while the Startup event handler is executing.
When you re-enable a soft-disabled add-in, the application immediately attempts to load the add-in. If the problem that initially caused the application to soft disable the add-in has not been fixed, the application will soft disable the add-in again. See How to: Re-enable an Add-in That Has Been Disabled for more information.
I have a PowerPoint Add-in. I created a setup for it and installed it. It works fine on my machine but the problem is when I install it on a fresh machine with a fresh copy of PowerPoint 2003, the add-in installs successfully but there is no COM Add-in option (menu) in PowerPoint in Tools -> COM Add-in and my add-in is not loaded.
I don't know why I have COM Add-in option in my development machine but not on the fresh machine. There must be some sort of setting or some other thing required before it can work.
So the question is there any other thing needed to download or install to be able to install COM Add-ins?
I developed the add-in in .NET 3.5 using C#, if that helps. Also I'm using Windows XP SP2.
Thanks.
I don't recall ever having seen a COM add-in option on the PPT 2003 tools menu, but I don't use .NET. Perhaps it's something that Visual Studio adds.
Or another possibility ... perhaps the menu item only appears when there are user-uninstallable COM add-ins installed.
With PPA add-ins, you can install them via registry entry in either HKCU or HKLM. If HKCU, then appear on the Tools | Add-ins dialog and the user can unload or remove them. If HKLM, they're hidden from the user.
I know there's one COM add-in installed to my copy of PowerPoint; just checked and it's registered in HKLM. Perhaps that's why there's no COM addins option on the Tools menu.
You can verify whether the COM add-in is loaded (even if from HKLM) with a bit of VBA run from within PPT:
Dim oCOMAddin as Object
For Each oCOMAddin In Application.COMAddIns
Debug.Print oCOMAddin.ProgID & vbTab _
& oCOMAddin.Description
Next oCOMAddin
That should at least tell you whether your add-in is properly loading or not.
I´ve created several VSTO add-ins for Outlook/Word/Excel/PowerPoint.
When i build them & then start the accociated program, the add-ins are installed and work wonderful.
When I try to install the DLL manually, in "Options > Add-Ins > COM-Add-Ins:Go to... > Add..." and then select the DLL, the program tells me, that it is not a valid Add-In.
What is the problem here? Visual Studio 2010 can install them automatically.
Can someone help me?
Thanks!
The simplest way to make an installer for your add-ins is to use the "Publish" functionality. Right click your Add-in project and select publish. This will show a wizard with basic options. This will generate an EXE file and a series of other files that are needed to install in other machines.
A .net VSTO addin DLL is not a normal COM dll (for instance, it doesn't self register, it has no TLB embedded within it) so Word can't deal with it through that addin's dialog as far as I know. VSTO addin's have to be installed via an installer.
I have created an Outlook addin using VS2010 and VSTO 4.0.
On Windows7+Outlook 2010, the installation and and application behaves as expected.
On Vista+Outlook 2007 (fresh installed virtual machine), the installer complains that it does not recognize the .vsto file format.
Has anyone experienced this? When I previously created VSTO3.0 addins and used them on Outlook 2007 I had no problems with installation.
You need to install the VSTO 4.0 runtime (which comes pre-installed with 2010, but not with 2007). You can download it from Microsoft right here.
If you deploy using ClickOnce this runtime gets added to the prerequisites automatically.