Estoy buscando un código que se obtiene de los resultados de búsqueda de texto completo mediante la búsqueda de Windows (que debe estar disponible en Vista, 7 y 8 de forma predeterminada).

He encontrado algunas preguntas y algunos textos en msdn, pero ninguno de ellos tienen algún código exacto que funciona. He probado con la API de Windows de Código Pack (como se menciona como uno de los interfaces de Búsqueda de Windows), pero devuelve los resultados sólo para los nombres de archivo, no para el texto completo.

  • ¿Qué entiende usted por FullText ?
  • Texto completo significa que la búsqueda de Windows buscará en el texto (contenido) de los archivos de documento (como .txt, .doc, .docx, .pdf), no sólo un nombre de archivo o de sus propiedades. Si usted busca con el Explorador de Windows, es posible, entonces debe ser posible.
InformationsquelleAutor Ivan Ičin | 2013-06-30

2 Comentarios

  1. 29

    Aquí está el código que hace el trabajo – en el ejemplo que me hizo buscar la palabra «ficticio» en la carpeta del escritorio:

    string connectionString = "Provider=Search.CollatorDSO;Extended Properties=\"Application=Windows\"";
    OleDbConnection connection = new OleDbConnection(connectionString);
    
    string query = @"SELECT System.ItemName FROM SystemIndex " +
       @"WHERE scope ='file:" + System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "' and FREETEXT('dummy')";
    OleDbCommand command = new OleDbCommand(query, connection);
    connection.Open();
    
    List<string> result = new List<string>();
    
    OleDbDataReader reader = command.ExecuteReader();
    while (reader.Read())
    {
        result.Add(reader.GetString(0));
    }
    
    connection.Close();
    • Funciona en Windows 8.1 en modo de escritorio
    • Esto no funciona para mí, si la u quiere encontrar la parte de una palabra. Por ejemplo: si el documento contiene ‘dummy’, y he usado el código encima de la búsqueda para ‘dum’. Alguna idea de cómo utilizar comodines aquí? Sólo la adición de un * no parece funcionar.
    • ¿has probado * para la búsqueda ? no de la solución
    • Alcance es archivo ? no carpeta ?
    • La sintaxis es la de arriba. Utilice la palabra clave del archivo y de la carpeta de conjunto de allí. Por eso yo no sé, yo no he creado esta API.
    • Obras para la ventana de 10!

  2. 1

    Echar un vistazo a la DSearch ejemplo.
    La Búsqueda De Windows Ejemplos De Código

    Que es lo que quieres.

    • Gracias, ya he encontrado la solución. Esa fue una de las páginas que yo necesitaba, pero estaba lejos de ser suficiente (que sql ejemplo no explicar la sintaxis de sql para la Búsqueda de Windows, el cual era necesario para mí y para el problema que he mencionado). Tienes el código completo que trabaja en mi respuesta anterior.
    • MS de la muestra enlace de descarga offline 🙂
    • Ese enlace que faltan Microsoft.Search.Interop.dll yo soy searh para el archivo dll ahora.

Dejar respuesta

Please enter your comment!
Please enter your name here