public static string ProjectExtension(VsProjectType projectType) { switch (projectType) { case VsProjectType.LegacySmartDeviceCs: case VsProjectType.SharePointCs: case VsProjectType.SmartDeviceCs: case VsProjectType.WindowsCs: case VsProjectType.WorkflowCs: return(".csproj"); case VsProjectType.LegacySmartDeviceVb: case VsProjectType.SharePointVb: case VsProjectType.SmartDeviceVb: case VsProjectType.WindowsVb: case VsProjectType.WorkflowVb: return(".vbproj"); case VsProjectType.WindowsCpp: return(".cppproj"); case VsProjectType.PHP: return(".phpproj"); default: return(".proj"); } }
public Project(string projDir, string dataDir) { m_projType = VsProjectType.Unknown; m_fileType = VsProjectType.Unknown; m_compiles = new List <string>(); m_contents = new List <string>(); m_errors = new List <string>(); m_folders = new List <string>(); m_projDir = projDir; m_dataDir = dataDir; m_trimLeft = dataDir.Length + 1; m_guid = "{" + System.Guid.NewGuid().ToString().ToUpper() + "}"; Program.WriteLine("Project {0} started.", Name); }
public static string ProjectGuid(VsProjectType projectType) { return(m_guidList[(int)projectType]); }
private void Map(DirectoryInfo dir) { Program.WriteLine(" mapping {0}...", dir.FullName); var netFullName = dir.FullName; bool isRoot = (netFullName == m_dataDir); var relativeDir = !isRoot?netFullName.Substring(m_trimLeft) : null; var subs = dir.GetDirectories(); if (!isRoot) { var physicalDir = Path.Combine(m_projDir, relativeDir); if (!Directory.Exists(physicalDir)) { Directory.CreateDirectory(physicalDir); } m_folders.Add(relativeDir); } for (int i = 0; i < subs.Length; i++) { DirectoryInfo sub = null; try { sub = subs[i]; if (!LC_EXCLUDES.Contains(sub.Name.ToLower()) && !Offensive(sub.Name)) { Map(sub); } } catch (Exception err) { m_errors.Add(string.Format("{0}: {1}", err.GetType(), err.Message)); } } if (!isRoot) { var files = dir.GetFiles(); for (int i = 0; i < files.Length; i++) { FileInfo file = null; try { file = files[i]; var name = file.Name.ToLower(); if (!LC_EXCLUDES.Contains(name) && !Offensive(name)) { var ext = file.Extension.ToLower(); if ((m_fileType == VsProjectType.Unknown) || (m_projType == VsProjectType.Unknown)) { if (WEBFILES.Contains(ext) && (m_projType == VsProjectType.Unknown)) { m_projType = VsProjectType.WebSite; } if (ext == CODEFILES[(int)CodeTypes.CPP]) { m_fileType = VsProjectType.WindowsCpp; } else if (ext == CODEFILES[(int)CodeTypes.CS]) { m_fileType = VsProjectType.WindowsCs; } else if (ext == ".php") { m_fileType = VsProjectType.PHP; m_projType = VsProjectType.PHP; } else if (ext == CODEFILES[(int)CodeTypes.VB]) { m_fileType = VsProjectType.WindowsVb; } } if (((m_fileType == VsProjectType.WindowsCs) || (m_fileType == VsProjectType.WindowsVb)) && ((m_projType == VsProjectType.WebSite) || (m_projType == VsProjectType.Unknown))) { m_projType = VsProjectType.WebApplication; } var link = Path.Combine(relativeDir, file.Name); if (CODEFILES.Contains(ext)) { m_compiles.Add(link); } else { m_contents.Add(link); } } } catch (Exception err) { m_errors.Add(string.Format("{0}: {1}", err.GetType(), err.Message)); } } } }
public IBuildService Create(VsProjectType type) { //return new MSBuildBuildService();MSCommandlineBuildService return(new MSCommandlineBuildService()); }