private void SetOptions(ProjectInfo project) { if (_noStdLib) { project.Properties[MSProp.NoStdLib] = true.ToString(); } if (_strict) { List<string> resolveType = new List<string>(); resolveType.Add("{HintPathFromItem}"); if (!_noprojectrefs) resolveType.Add("{CandidateAssemblyFiles}"); if (_framework >= FrameworkVersions.v40) resolveType.Add("{TargetFrameworkDirectory}"); //TODO: unable to avoid this for System.Core? project.Properties[MSProp.AssemblySearchPaths] = String.Join(";", resolveType.ToArray()); //C:\Windows\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets: line 441 //{CandidateAssemblyFiles};$(ReferencePath);{HintPathFromItem};{TargetFrameworkDirectory}; //{Registry:$(FrameworkRegistryBase),$(TargetFrameworkVersion),$(AssemblyFoldersSuffix)$(AssemblyFoldersExConditions)}; //{AssemblyFolders};{GAC};{RawFileName};$(OutputPath) // 3.5 uses $(OutDir) rather than $(OutputPath) } }
public WorkItem(ProjectInfo proj) { Project = proj; FullName = proj.ProjectFile; Depends = new List<string>(); }
public ProjectPostBuildEventArgs(ProjectInfo project, bool bFailed) : base(false) { _project = project; _failed = bFailed; }
public ProjectPreBuildEventArgs(ProjectInfo project, string[] targets) : base(false) { _project = project; _targets = targets; }
public ProjectLoadedEventArgs(ProjectInfo project) : base(false) { _project = project; }
public WorkItem(ProjectInfo proj) { Project = proj; FullName = proj.ProjectFile; Depends = new List <string>(); }
protected CancelEventArgs OnProjectPostBuild(ProjectInfo proj, bool bFailed) { if (ProjectPostBuild != null) { ProjectPostBuildEventArgs args = new ProjectPostBuildEventArgs(proj, bFailed); ProjectPostBuild(this, args); return args; } return ContinueResponse; }
protected CancelEventArgs OnProjectPreBuild(ProjectInfo proj, ref string[] targets) { if (ProjectPreBuild != null) { ProjectPreBuildEventArgs args = new ProjectPreBuildEventArgs(proj, targets); ProjectPreBuild(this, args); targets = args.Targets; return args; } return ContinueResponse; }
protected CancelEventArgs OnProjectLoaded(ProjectInfo proj) { if (ProjectLoaded != null) { ProjectLoadedEventArgs args = new ProjectLoadedEventArgs(proj); ProjectLoaded(this, args); return args; } return ContinueResponse; }
public void UnloadProject(ProjectInfo project) { Engine.UnloadProject(project.MsProject); }
public ProjectInfo LoadProject(string projFile) { object[] ctorargs = new object[] { Engine }; if (Is35OrLater) ctorargs = new object[] { Engine, FrameworkVersionString }; Project prj = (Project)typeof(Project).InvokeMember(null, BindingFlags.CreateInstance, null, null, ctorargs); try { prj.Load(projFile); } catch (Exception e) { Log.Error("Invalid Project: {0}\r\n\t{1}", projFile, e.Message); throw; } ProjectInfo project = new ProjectInfo(prj); if (OnProjectLoaded(project).Cancel) { UnloadProject(project); throw new OperationCanceledException(); } return project; }