KWIC FinderのWindows Desktop Search3.0 への対応方法を調べている。
まず、Windows Desktop SearchのAPIの文書が公開されており、SDKとサンプルプログラムがダウンロードできる。
MSN Japan - ニュース, 天気, メール (Outlook, Hotmail), Bing検索, Skype
ところが、このサンプルはMSNサーチツールバーでは動作するが、Windows Desktop Search3.0 では動かない!
諦めかけていたところ、次のような素敵な記事をみつけた。
http://www.microsoft.com/technet/scriptcenter/topics/desktop/wdsearch.mspx
さっそく実験してみよう。次のようなスクリプトをエディタで書いて、test.vbsという名前で保存する。もちろん、Windows Desktop Searchがインストールされていることが前提である。'foo'の場所に、検索したい文字列を入れて実行すると、ちゃんと検索に一致するファイル名が帰ってくる。
On Error Resume Next Set objConnection = CreateObject("ADODB.Connection") Set objRecordSet = CreateObject("ADODB.Recordset") objConnection.Open "Provider=Search.CollatorDSO;Extended Properties='Application=Windows';" objRecordSet.Open "SELECT System.FileName FROM SYSTEMINDEX WHERE CONTAINS('foo')", _ objConnection objRecordSet.MoveFirst Do Until objRecordset.EOF Wscript.Echo objRecordset.Fields.Item("System.FileName") objRecordset.MoveNext Loop