Esempio n. 1
0
        public SolutionConfiguration(EnvDTE.SolutionConfiguration solutionConfiguration)
        {
            ThreadHelper.ThrowIfNotOnUIThread();
            configurationPerProject = new Dictionary <string, ProjectConfiguration>();
            var solutionContexts = solutionConfiguration.SolutionContexts;

            foreach (EnvDTE.SolutionContext context in solutionContexts)
            {
                var projectConfig = new ProjectConfiguration(context);
                configurationPerProject.Add(projectConfig.ProjectName, projectConfig);
            }
        }
Esempio n. 2
0
        public void RunFinished()
        {
            if (!finish)
            {
                ClearUp();
            }
            this.selectedVersions.OrderBy(r => r.CorelVersion);

            var solutionConfigurations = this.project.DTE.Solution.SolutionBuild.SolutionConfigurations;



            foreach (EnvDTE.SolutionConfiguration item in solutionConfigurations)
            {
                EnvDTE.SolutionConfiguration toDelete = null;
                for (int i = 0; i < this.selectedVersions.Count; i++)
                {
                    if (!item.Name.Contains(this.selectedVersions[i].CorelAbreviation))
                    {
                        toDelete = item;
                    }
                    else
                    {
                        toDelete = null;
                        break;
                    }
                }

                if (toDelete != null)
                {
                    try
                    {
                        Console.WriteLine(toDelete.Name);
                        toDelete.Delete();
                    }
                    catch { }
                }
            }
            foreach (EnvDTE.SolutionConfiguration item in solutionConfigurations)
            {
                switch (item.Name)
                {
                case "2021 Debug":
                    item.Activate();
                    break;

                case "2020 Debug":
                    item.Activate();
                    break;

                case "2019 Debug":
                    item.Activate();
                    break;

                case "2018 Debug":
                    item.Activate();
                    break;

                case "2017 Debug":
                    item.Activate();
                    break;

                case "X8 Debug":
                    item.Activate();
                    break;

                case "X7 Debug":
                    item.Activate();
                    break;
                }
            }
            // }
            this.project.DTE.Solution.SolutionBuild.Build(true);

            //foreach (EnvDTE.SolutionConfiguration item in this.project.DTE.Solution.SolutionBuild.SolutionConfigurations)
            //{
            //    if (item.Name == "2020 Debug")
            //    {
            //        configurations[5] = item;
            //        continue;
            //    }
            //    if (item.Name == "2019 Debug")
            //    {
            //        configurations[4] = item;
            //        continue;
            //    }
            //    if (item.Name == "2018 Debug")
            //    {
            //        configurations[3] = item;
            //        continue;
            //    }
            //    if (item.Name == "2017 Debug")
            //    {
            //        configurations[2] = item;
            //        continue;
            //    }
            //    if(item.Name == "X8 Debug")
            //    {
            //        configurations[1] = item;
            //        continue;
            //    }
            //    if(item.Name == "X7 Debug")
            //    {
            //        configurations[0] = item;
            //        continue;
            //    }


            //}
            //configurations.RemoveAll(r => r == null);


            //for (int i = 0; i < configurations.Count; i++)
            //{
            //    if (configurations[i] != null)
            //    {
            //        configurations[i].Activate();
            //        configurations[i].DTE.Solution.SolutionBuild.Build(true);
            //        break;

            //    }
            //}

            //this.project.Save();
        }