private static IVsBuildPropertyStorage GetPropertyStorage(EnvDTE.Project project) { ThreadHelper.ThrowIfNotOnUIThread(); IVsHierarchy projectHierarchy = project.GetVsHierarchy(); return(GetPropertyStorage(projectHierarchy)); }
public static ProjectItem FindProjectItemByName(EnvDTE.Project prj, string strItemNameWithFileExtension) { if (prj.ProjectItems.Count < 1) { throw new Exception(string.Format("Project Item {0} not found. No project items in project {1}", strItemNameWithFileExtension, prj.Name)); } if (strItemNameWithFileExtension == null) { return(prj.ProjectItems.Item(1)); } foreach (ProjectItem pri in prj.ProjectItems) { if (pri.Name == strItemNameWithFileExtension) { return(pri); } } return(null); }
public static TextDocument ActivateAndGetTextDocument(EnvDTE.Project prj, string strProjectItem) { ProjectItem pri = FindProjectItemByName(prj, strProjectItem); if (pri == null) { return(null); } // we need to ensure that the item is open since we would not // be able to get a text document otherwise if (!pri.get_IsOpen(EnvDTE.Constants.vsViewKindCode)) { pri.Open(EnvDTE.Constants.vsViewKindCode); } Document doc = pri.Document; doc.Activate(); TextDocument txdoc = doc.DTE.ActiveDocument.Object("TextDocument") as TextDocument; return(txdoc); }
public static bool IsVbProject(EnvDTE.Project project) { return(project.Kind == ProjectKind.prjKindVBProject); }
public static bool IsCsProject(EnvDTE.Project project) { return(project.Kind == ProjectKind.prjKindCSharpProject); }