Неизвестная ошибка при использовании Windows Search API

Я использую API поиска Windows из С# со следующим запросом:

SELECT  System.ItemNameDisplay,SYSTEM.ITEMURL,System.DateModified, System.ItemName, System.Search.Rank, System.Keywords, System.Search.AutoSummary,System.Search.GatherTime, System.ItemType FROM "SYSTEMINDEX" WHERE CONTAINS(*,'"cowie*"',1033) Order By System.DateModified Desc

Эта команда передается объекту OleDbCommand, который считывается в цикле:

 while (reader.Read())                 
            {...}

Когда команда запускается, в операторе Reader.Read() возникает неуказанная ошибка после обработки последнего результата. Если строка поиска не существует в поисковом индексе Windows, выдается ошибка без возврата результатов.

Хотя ошибка может быть перехвачена сообщением «Неопределенная ошибка» и не представлена ​​пользователю как ошибка (поскольку кажется, что все результаты возвращаются до ее возникновения), было бы лучше вообще предотвратить ее появление. Может ли кто-нибудь предложить какие-либо рекомендации о том, как это сделать?


person SimonKravis    schedule 17.06.2017    source источник


Ответы (1)


Я получил ту же ошибку, что и ваша, хотя и в VB6 на Windows Server 2012. Короче говоря: я выполняю поисковый запрос Windows и при чтении результатов из набора записей получаю:

Unspecified error

Выяснил, что после удаления обновлений windows KB4022717, KB4022726 ошибка больше не возникает.

Проверьте это.

person Samuel Racine    schedule 24.08.2017