Я пытаюсь написать простой веб-сайт (ASP.NET v4), который будет вызывать Windows Search, найти определенный файл и вернуть его пользователю.В качестве примера я собрал следующее: он вызывает службу поиска Windows на «remoteserver» и возвращает путь «somefile.txt»:
OleDbConnection conn = new OleDbConnection();
conn.ConnectionString = "Provider=Search.CollatorDSO;Extended Properties='Application=Windows';";
OleDbCommand cmd = conn.CreateCommand();
cmd.CommandText = string.Format(
"SELECT System.ItemPathDisplay, System.ItemType FROM " +
" sytelhp.systemindex WHERE SCOPE='file://remoteserver/archive' AND CONTAINS(\"System.FileName\", " +
" '\"*{0}*\"')", "somefile.txt");
conn.Open();
OleDbDataReader rdr = cmd.ExecuteReader();
string result=rdr[0].ToString();
.. и это прекрасно работает на VisualСреда разработки Studio 2010, «результат» содержит путь к файлу.Однако, если я разверну его на локальном сервере IIS7 (запущенном на Server 2008), я получу эту ошибку:
The parameter is incorrect.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.OleDb.OleDbException: The parameter is incorrect.
Я не знаю, куда идти дальше.Что мне нужно сделать с IIS7, или с кодом, или с обоими, чтобы он заработал?Опять же, это прекрасно работает в VS2010 (протестировано как на Windows 7, так и на Windows 2008 Server).