Domanda

Sto cercando di scrivere un semplice sito web (ASP.NET v4), che chiamerà Windows Search, trovare un file specifico e restituirlo all'utente. Ho messo insieme il seguente come esempio: si chiama il servizio Windows Search su "remoteserver", e restituisce il percorso di "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();

.. e questo funziona alla grande su Visual Studio 2010 ambiente di sviluppo, "risultato" contiene il percorso del file. Tuttavia, se schiero al server IIS7 locale (in esecuzione su Server 2008), ottengo questo errore:

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.

Sono in perdita dove andare prossimo. Che cosa devo fare per IIS7, oppure il codice, o entrambi per farlo funzionare? Ancora una volta, questo funziona bene all'interno di VS2010 (testato su Windows 7 e Windows 2008 Server).

È stato utile?

Soluzione

Credo che si esegue su Vista o sistema operativo più vecchio e l'IIS viene eseguito su 2008 Server o più recente? Prova Provider=Search.CollatorDSO.1 (notare il 0,1 ).

Modifica : è necessario utilizzare un account utente diverso per la ricerca di lavoro (non il default "servizio di rete" uno le corse asp.net app sotto). Vedere i commenti per maggiori informazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top