通过.NET查询Windows搜索服务:权限问题?

时间:2014-09-05 23:33:34

标签: .net windows

我正在尝试使用Windows Search API搜索网站上的文件,这是this question的接受答案。简言之:

var con = new OleDbConnection("Provider=Search.CollatorDSO;EXTENDED PROPERTIES='Application=Windows'");
...
"SELECT System.ItemName FROM SystemIndex WHERE SCOPE='file:C:\inetpub\wwwroot\[MySite]' ";

但是,它永远不会返回任何项目。

我发现全开查询(无范围)只返回C:\Users\[me]

中的文件

例如,它在我的桌面上找到文件,但在C:\ Windows中找不到。我是本地管理员,没有提及权限限制。

我在webforms中尝试过它,并在本地和远程部署。同样的行为。

有没有人有解决方案?

1 个答案:

答案 0 :(得分:0)

我正在回答我自己的问题。

我的“问题”与权限无关;这是因为无知Windows搜索的工作原理。

我偶然发现了来自MSFT的Advanced Indexing Options文章,并意识到它只是在我的用户个人资料,开始菜单和IE历史记录中索引文件。我手动将我的网站文件夹添加到索引中,一切都开始像魔术一样工作。