Код ASP.NET OLEDB разрывается при развертывании на IIS7

StackOverflow https://stackoverflow.com/questions/3151551

  •  01-10-2019
  •  | 
  •  

Вопрос

Я пытаюсь написать простой веб-сайт (ASP.NET V4), который будет вызывать поиск Windows, найти определенный файл и вернуть его пользователю. Я собрал следующее в качестве примера: он вызывает службу поиска Windows на «Remoteserver» и возвращает путь «queyfile.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 (работает на сервере 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).

Это было полезно?

Решение

Я предполагаю, что вы работаете на Vista или более старых ОС, и IIS работает на сервере 2008 года или новее? Пытаться Provider=Search.CollatorDSO.1 (Обратите внимание .1).

Редактировать: Вы должны использовать другую учетную запись пользователя для поиска на работу (не на сетевой службе по умолчанию «One Asp.net приложение работает под). Смотрите комментарии для получения дополнительной информации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top