COMAddin seems to be a VSTO wrapper. As Visual Studio itself (without Tools for Office) and NetOffice know nothing about it no. 4 should be like this:
using Extensibility; publicclass Addin :IDTExtensibility2 { void IDTExtensibility2.OnStartupComplete(ref Array custom) { } void IDTExtensibility2.OnConnection(object Application, ext_ConnectMode ConnectMode, object AddInInst, ref Array custom) { _application = new Outlook.Application(null, Application); } void IDTExtensibility2.OnDisconnection(ext_DisconnectMode RemoveMode, ref Array custom) { if(null != _application) { _application.Dispose(); _application = null; } } void IDTExtensibility2.OnAddInsUpdate(ref Array custom) { } void IDTExtensibility2.OnBeginShutdown(ref Array custom) { } }