Check Windows Search Index

Hallo Zusammen,

ich habe nun schon Google bemüht und auch die Forums-Suche, habe aber noch nichts zu dem Thema gefunden.
Gibt es eine Möglichkeit, wie ich den Search Index von Windows abfragen kann? Also nicht den Service, den prüfe ich natürlich schon, sondern sonstige Informationen wie z.B. Anzahl indexierter Dateien etc.

Falls jemand schon sowas nutzt oder ne Idee hat, wie ich es auslesen kann, wäre das super.

Danke und Gruss

Sascha

Hier ein paar Zeilen Powershell welche ausgeben wie viele Files im Index stehen.
Einfach mal probieren ob bei dir sinnvolle Werte rauskommen.

$objConn = New-Object System.Data.OleDb.OleDbConnection("Provider=Search.CollatorDSO;Extended Properties='Application=Windows'")
$sqlCommand = New-Object System.Data.OleDb.OleDbCommand("GROUP ON workid [0] AGGREGATE COUNT() as 'Total' OVER (SELECT workid FROM systemindex)")
$sqlCommand.Connection = $objConn
$objConn.open()
$sqlCommand.ExecuteReader()

Ergebnis sollte hier eine Anzahl sein.

Hallo Andreas,

Danke für deine schnelle Antwort. Ich habe die Zeilen auf meinem Rechner und auf unserem Storage-Server getestet. Bei beiden wird mir die Zahl 3 angezeigt. Auf dem Server sind es aber laut Windows 1.6 Mio. Leider ist mein Powershell nicht so gut, dass ich selbst den “Fehler” finden kann.

Gruss, Sascha

Der Fehler liegt dann eher in der Datenbank Abfrage :slight_smile:
Aber da bin ich auch nicht der richtige für - die Zeilen sind auch nur aus dem Internet “geklaut”.

1 Like

OK, trotzdem vielen Dank. Dann suche ich mal in die Richtung, Powershell und SQL. Vielleicht finde ich ja noch etwas anderes.

So, habe nun etwas gefunden, was bei mir funktioniert.

$sql = "SELECT System.ItemName, System.DateCreated FROM SYSTEMINDEX"
$provider = "provider=search.collatordso;extended properties=’application=windows’;" 
$connector = new-object system.data.oledb.oledbdataadapter -argument $sql, $provider 
$dataset = new-object system.data.dataset 
$index = if ($connector.fill($dataset)) { $dataset.tables[0] }
($index | measure).count

Jetzt muss ich das nur noch in einen Check umbauen.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed. Contact an admin if you think this should be re-opened.