Пример #1
0
        public static void RemoveSearchFolder(string strPath)
        {
            if (strPath == null || strPath.Length == 0)
            {
                return;
            }

            CSearchManager           manager            = new CSearchManager();
            CSearchCatalogManager    catalogManager     = manager.GetCatalog("SystemIndex");
            CSearchCrawlScopeManager searchScopeManager = catalogManager.GetCrawlScopeManager();

            searchScopeManager.RevertToDefaultScopes();
            searchScopeManager.RevertToDefaultScopes();
            searchScopeManager.RemoveScopeRule("file:///" + strPath);
        }
Пример #2
0
        public void AddPathToSearchIndex(string fullPath)
        {
            Uri path = new Uri(fullPath);

            string indexingPath = path.ToString();

            CSearchManager           csm     = new CSearchManager();
            CSearchCrawlScopeManager manager = csm.GetCatalog("SystemIndex").GetCrawlScopeManager();

            if (manager.IncludedInCrawlScope(indexingPath) == 0)
            {
                manager.AddUserScopeRule(indexingPath, 1, 1, 0);
                manager.SaveAll();
            }
        }
Пример #3
0
        public void ReIndexFolder(string strPath)
        {
            if (strPath == null || strPath.Length == 0)
            {
                return;
            }

            String                   searchPath         = "file:///" + strPath.ToLower();
            CSearchManager           manager            = new CSearchManager();
            CSearchCatalogManager    catalogManager     = manager.GetCatalog("SystemIndex");
            CSearchCrawlScopeManager searchScopeManager = catalogManager.GetCrawlScopeManager();

            // create search root
            uint             rootCnt = 0;
            CEnumSearchRoots roots   = searchScopeManager.EnumerateRoots();
            bool             exist   = false;

            do
            {
                CSearchRoot aRoot = new CSearchRoot();

                roots.Next(1, out aRoot, ref rootCnt);
                if (rootCnt != 0)
                {
                    roots.Skip(1);
                    if (aRoot.RootURL == searchPath)
                    {
                        exist = true;
                    }
                }
            } while (rootCnt != 0);

            if (!exist)
            {
                CSearchRoot r = new CSearchRoot();
                r.RootURL = searchPath;
                searchScopeManager.AddRoot(r);
                searchScopeManager.SaveAll();
            }

            searchScopeManager.RevertToDefaultScopes();
            //if (searchScopeManager.IncludedInCrawlScope(searchPath) == 0)
            //{
            searchScopeManager.AddUserScopeRule(searchPath, 1, 1, 0);
            searchScopeManager.SaveAll();
            //}
            catalogManager.ReindexSearchRoot(searchPath);
        }
Пример #4
0
        // strPath: c:\folder\subfolder\
        public static void AddSearchFolder(string strPath)
        {
            if (strPath == null || strPath.Length == 0)
            {
                return;
            }

            CSearchManager           manager            = new CSearchManager();
            CSearchCatalogManager    catalogManager     = manager.GetCatalog("SystemIndex");
            CSearchCrawlScopeManager searchScopeManager = catalogManager.GetCrawlScopeManager();

            searchScopeManager.RevertToDefaultScopes();
            if (searchScopeManager.IncludedInCrawlScope("file:///" + strPath) == 0)
            {
                searchScopeManager.AddUserScopeRule("file:///" + strPath, 1, 1, 0);
                searchScopeManager.SaveAll();
            }
        }