7

Microsoft recommends to develop Office add-ins using the new Office.JS Add-ins mainly because of cross-plataforming.

We all saw a new player arriving, .NET Core. If Microsoft used .NET Core to create VSTO cross-plataforms, it would be awesome. VSTO has the benefit to be much more tied to Excel's process (not as tied as VBA) than the asynchronous Office.JS. This would please a lot of VSTO/VBA developers as they wouldn't have to learn JavaScript/CSS/HTML and a new deploying paradigm.

VSTO is based on COM, but I believe it would be possible to extends the existing APIs on VSTO to support Linux and Mac. It is undeniable that a VSTO add-in running in Excel's process is better than an Office.JS add-in.

My questions is: Is there a huge technical reason why this is not possible or too hard to implement?

  • COM is not supported by Linux and Mac,this is the reason why VSTO can't work on those platforms. – Malick Apr 13 '17 at 13:12

1 Answers1

1

COM interop requires IDispatch in order to allow late binding to COM objects, which is for Windows only and obviously not a component that satisfies .NET Core's cross-platform compatibility. So .NET Core cannot integrate with Interop assemblies without this support for IDispatch.

Eric Legault
  • 5,706
  • 2
  • 22
  • 38