Setup Environment
1. Install Microsoft Windows SDK
2. Install Microsoft Windows Search SDK
How to Add Indexing Location
CSearchManager searchManager = new CSearchManager(); CSearchCatalogManager catalogManager = searchManager.GetCatalog("SystemIndex"); CSearchCrawlScopeManager crawlScopeManager = catalogManager.GetCrawlScopeManager(); crawlScopeManager.AddUserScopeRule(@"file:///D:\My Documents\", 1, 1, 1); crawlScopeManager.SaveAll(); catalogManager.Reindex();
How to Search Indexed Location
CSearchManager searchManager = new CSearchManager(); CSearchCatalogManager catalogManager = searchManager.GetCatalog("SystemIndex"); CSearchQueryHelper queryHelper = catalogManager.GetQueryHelper(); queryHelper.QueryWhereRestrictions = @"AND scope='file:D:\My Documents\'"; string sql = queryHelper.GenerateSQLFromUserQuery("Hello World"); using (OleDbConnection conneciton = new OleDbConnection(queryHelper.ConnectionString)) { using (OleDbCommand command = new OleDbCommand(sql, conneciton)) { conneciton.Open(); using (OleDbDataReader dataReader = command.ExecuteReader()) { while (dataReader.Read()) { Console.WriteLine(dataReader[0]); } } } }
References