Well, that's a very important thing, or at least, I think it is, so, please read it carefully.
Introduction
My background is the COM/VSTO land and due to new requirements, I'm slightly merging to office.js.
First, I was very pleased by the concept that unlike Word, Excel & PPT ofiice.js add-ins, Outlook Web Add-ins install directly on the user's exchange inbox, which means: install once, run everywhere. This worked for me very well at the beginning but it quickly turns out, in some situations, to be terrible, or at least in two of my cases.
We have to agree that Outlook Web Addins (and office.js addins in general) are not mature enough to completely replace COM/VSTO/VBA addins. The ONLY clear benefit is the multi-platform support. So, as I already have clients who use COM Outlook addins, which works more than perfect for their needs, they just needed a way to have the same addin on Mac, Web and Mobile, and I spend some time learning how to build addins using office.js and did deliver some good results but after they started using the new addin, some unexpected drawbacks flopped to the surface which made me think twice!
Now, on Windows, we have both addins running for Outlook the COM & Office.js one but as far as I can tell, there is no comparison between the two, the COM addin is far more superior than the equivalent Web Addin. If I have to state ONLY one benefit of COM over office.js in Outlook, I'd say that office.js lacks the support of inboxes that not use Exchange server as a backend, so Gmail, Yahoo and 3rd-party email providers are not supported which is too frustrating and we should keep the COM addin there.
Problem: Below I'll provide two use cases where the Outlook Web Addin is very [un-welcome] with the presence of a COM addin.
Scenario #1
In one addin, we intercept and parse the email before it is sent to see if it will allow Outlook to send it or not. This works perfectly with both, for COM addin we use ApplicationEvents_11_ItemSendEventHandler
event and for Web Addin, we use the horribly implemented <Event Type="ItemSend" FunctionExecution="synchronous" FunctionName="checkEmail" />
, the terrible weakness in this implementation is, unlike in the COM add-in, you cannot give the user the option to turn ON/OFF this option and they will always have to see the annoying msg, "[You Add-in] is working on your request"
and, in addition to your inability to customize the msg's text shown, you cannot hide it or disable it which results in a bad UX.
To make things even worst, I was expecting that if both addins are there and waiting for the Send Event to intercept, I assumed it's the COM add-in which should receive the event first then when processing it, it will set its Cancel variable to true, this way the Web Add-in won't be aware of the event at all, but, surprisingly, the exact opposite happens, the Web Add-in received the event first, process it and cancel it: event.completed({ allowEvent: true });
, while the COM addin was having good dreams.
Scenario #2: Having an addin that acts as a Spellchecker.
While we have full control over the Word editor for [Windows] Outlook, the COM addin provides excellent results, which is not the case in Web Addin where you stick with a custom task pane and provide a minimal user experience that does the very basic things, so, we find ourselves having the two spellcheckers in Outlook one is excellent and the other one is ugly and its presence ONLY makes sense when it runs in Outlook for Mac. For Outlook.com, a chrome extension would be the ideal solution and for mobile, Compose Mode is not supported yet!!
The Question
Having said all the above, hope you didn't skip it, Is there a way to disable a Web Addin for Outlook in Windows and, possibly, Online? In other words, can we SELECT the platforms that are supported by an Outlook Web Addin? or let's say it again, like: can we SELECT the platforms that an Outlook Web Addin existence makes sense?