private EnvDTE.Properties TryGetStartupProjectProperties() { try { IVsSolutionBuildManager solutionBuildManager = GetGlobalService(typeof(SVsSolutionBuildManager)) as IVsSolutionBuildManager; if (solutionBuildManager == null) { return(null); } IVsHierarchy startupProject; if (ErrorHandler.Failed(solutionBuildManager.get_StartupProject(out startupProject)) || startupProject == null) { return(null); } EnvDTE.Properties properties = TryGetDtePropertiesFromHierarchy(startupProject); return(properties); } catch (Exception ex) { if (ErrorHandler.IsCriticalException(ex)) { throw; } return(null); } }
private static IVsHierarchy GetStartupProjectHierarchy() { IVsSolutionBuildManager build = DockableCLArgsPackage.GetGlobalService(typeof(SVsSolutionBuildManager)) as IVsSolutionBuildManager; IVsHierarchy hierarchy; if (ErrorHandler.Failed(build.get_StartupProject(out hierarchy))) { return(null); } return(hierarchy); }
// ----------------------------------------------------- /// <summary> /// Gets the hierarchy item corresponding to the startup project in /// the solution. /// </summary> /// <param name="sp"> /// The service provider to use. /// </param> /// <returns> /// The startup project in the solution. /// </returns> public static HierarchyItem GetStartupProject(IServiceProvider sp) { IVsSolutionBuildManager manager = (IVsSolutionBuildManager)sp.GetService( typeof(SVsSolutionBuildManager)); IVsHierarchy hierarchy; manager.get_StartupProject(out hierarchy); if (hierarchy != null) { return(new HierarchyItem(hierarchy)); } else { return(null); } }
public static VsItemInfo GetStartupProject() { ThreadHelper.ThrowIfNotOnUIThread(); VsItemInfo startupProject = null; IVsSolutionBuildManager solutionBuildManager = GetVsSolutionBuildManager(); if (solutionBuildManager != null) { IVsHierarchy value = null; bool success = Success(solutionBuildManager.get_StartupProject(out value)); if (success && value != null) { startupProject = new VsItemInfo(value); } } return(startupProject); }
public static bool IsStartupProject(HierarchyItemIdentity hierarchyIdentity) { IVsHierarchy hierarchy; if (!IsProject(hierarchyIdentity)) { return(false); } IVsSolutionBuildManager solutionBuildManager = GlobalServices.SolutionBuildManager; if (solutionBuildManager == null) { return(false); } if ((solutionBuildManager.get_StartupProject(out hierarchy) < 0) || (hierarchy == null)) { return(false); } HierarchyItemIdentity identity = HierarchyItemIdentity.Create(hierarchy, 0xfffffffe); return(hierarchyIdentity.Equals(identity)); }