如何使用Windows搜索API将文件夹添加到Windows索引列表中

All*_*ech 5 c# windows-search

在索引选项中,"索引这些位置"中有一个位置列表,有没有办法通过c#将从我的应用程序创建的文件夹添加到列表中?

All*_*ech 4

我找到了一个解决方案,任何想要让他们的应用程序文件夹支持 C# 中的 windows 搜索的人都可以这样做:

  1. 下载 Windows 搜索 API ( http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=7388 )

  2. 导入 Micosoft.Search.Interop 命名空间。

  3. 写代码

    Uri path = new Uri(location);
    
    string indexingPath = path.AbsoluteUri;
    
    CSearchManager csm = new CSearchManager();
    CSearchCrawlScopeManager manager = csm.GetCatalog("SystemIndex").GetCrawlScopeManager();
    manager.AddUserScopeRule(indexingPath, 1, 1, 0);
    manager.SaveAll();
    
    Run Code Online (Sandbox Code Playgroud)