示例#1
0
        private void Add2015AndOlder(IDirectoryNameSearch search, IApplicationCollection applications)
        {
            IEnumerable <IDirectory> directories = search.FindDirectories(TextSearch.CreatePrefixed("Microsoft Visual Studio"));

            foreach (IDirectory directory in directories)
            {
                TryAdd(applications, directory);
            }
        }
示例#2
0
        private void Add2017AndNewer(IDirectoryNameSearch search, IApplicationCollection applications)
        {
            IDirectory root = search
                              .FindDirectories(TextSearch.CreateMatched("Microsoft Visual Studio"))
                              .FirstOrDefault();

            if (root == null)
            {
                return;
            }

            foreach (IDirectory version in root.WithDirectoryEnumerator())
            {
                if (version.Name.Length == 4)
                {
                    foreach (IDirectory edition in version.WithDirectoryEnumerator())
                    {
                        TryAdd(applications, edition);
                    }
                }
            }
        }
示例#3
0
 public static bool TryWithDirectoryNameSearch(this IDirectory model, out IDirectoryNameSearch feature)
 {
     Ensure.NotNull(model, "model");
     return(model.TryWith <IDirectoryNameSearch>(out feature));
 }