public override int SetSite(Microsoft.VisualStudio.OLE.Interop.IServiceProvider site) { base.SetSite(site); //Initialize a new object to track project document changes so that we can update the StartupFile Property accordingly _projectDocListenerForStartupFileUpdates = new ProjectDocumentsListenerForStartupFileUpdates((ServiceProvider)Site, this); _projectDocListenerForStartupFileUpdates.Init(); return(VSConstants.S_OK); }
public override int Close() { if (null != _projectDocListenerForStartupFileUpdates) { _projectDocListenerForStartupFileUpdates.Dispose(); _projectDocListenerForStartupFileUpdates = null; } if (null != Site) { LibraryManager libraryManager = Site.GetService(GetLibraryManagerType()) as LibraryManager; if (null != libraryManager) { libraryManager.UnregisterHierarchy(InteropSafeHierarchy); } } return(base.Close()); }