次の方法で共有


変更のインデックスへの通知 (従来の Windows 環境機能)

Note

Windows Desktop Search 2.x は、Windows XP および Windows Server 2003 のアドインとして最初に使用できた古いテクノロジです。 以降のリリースでは、代わりに Windows Search を使用してください。

Microsoft Windows Desktop Search (WDS) 2.6 では、特定のデータ ストアのプロトコル ハンドラーは、ストア内のデータが変更されたときに WDS インデクサーに通知できます。 これにより、インデクサーが増分インデックスのストア全体をクロールしないようにすることで、パフォーマンスが向上します。 プロトコル ハンドラーは、通知 API を使用して、アイテムが移動または削除されたことをインデクサーに通知し、インデックス作成を必要とする URL の WDS インデクサーのクロール キューにスコープを追加できます。 通知は、メールなどのアプリケーションに役立ちます。このアプリケーションでは、プロトコル ハンドラーがストアを監視し、アイテムが変更され、インデックス作成が必要であることをインデクサーに通知します。

ISearchItemsChangedSink

プロトコル ハンドラーは、 ISearchItemsChangedSink インターフェイスを介してインデクサーに変更を通知します。 データ変更に関する情報は、SEARCH_ITEM_CHANGE構造体とSEARCH_KIND_OF_CHANGE列挙型で収集し、ISearchItemsChangedSink インターフェイスの OnItemsChanged メソッドを介して Indexer に伝達する必要があります。

このインターフェイスにアクセスするには、カスタム プロトコル ハンドラーで最初に ISearchManager オブジェクトをインスタンス化して、 ISearchCatalogManager オブジェクトにアクセスする必要があります。 そこから、 ISearchItemsChangedSink オブジェクトをインスタンス化し、データの変更をインデクサーに通知できます。

OnItemsChanged メソッドを使用すると、データ変更を収集して顧客データ ストアに伝達し、インデックス作成を開始できます。

Direction 変数 説明
場所 dwNumberofChanges 通知の変更の合計数。
場所 DataChangeEntries[] SEARCH_ITEM_CHANGE構造体の配列内のすべての変更通知。
アウト dwBatchId エラーで返されるバッチ ID。
アウト hrCompletionCodes[] 各 URL がインデックス作成に受け入れられたかどうかを示します。

 

SEARCH_ITEM_CHANGE構造体は、発生した変更の種類と、該当する場合はアイテムの現在の URL と以前の URL を識別します。 構造体は次のように定義されます。

プロパティ名 プロパティの種類 説明
Change SEARCH_KIND_OF_CHANGE 通知される変更の種類。
URL LPWSTR 変更されたオブジェクトの URL。
OldURL LPWSTR 通知が移動の場合は、古い URL が指定され、一意である必要があります。
優先度 SEARCH_NOTIFICATION_PRIORITY 変更の優先順位。

 

SEARCH_KIND_OF_CHANGE列挙は次のように定義されます。

列挙値 説明
SEARCH_CHANGE_ADD 0 通知は、追加の URL 用です。
SEARCH_CHANGE_DELETE 1 通知は、URL の削除に関する情報です。
SEARCH_CHANGE_MODIFY 2 通知は、URL が変更されたことです。
SEARCH_CHANGE_MOVE_RENAME 3 通知は、オブジェクトを新しい URL に移動して名前を変更することです。
SEARCH_CHANGE_SEMANTICS_DIRECTORY 0x10000 通知はコンテナー URL に対するものです。
SEARCH_CHANGE_SEMANTICS_SHALLOW 0x20000 通知は、コンテナー プロパティのインデックスのみを作成する必要があるコンテナー URL に対するものです。
SEARCH_CHANGE_SEMANTICS_SECURITY 0x40000 通知は、セキュリティ プロパティが変更された URL またはコンテナー URL に対するものです。

 

SEARCH_NOTIFICATION_PRIORITY列挙は次のように定義されます。

列挙値 説明
SEARCH_NORMAL_PRIORITY 0 URL のインデックスを作成する場合は、通常の優先度のみを使用する必要があります。 これらの通知は、ユーザーのファイルとストアの通常のバックグラウンド 増分インデックス作成の前に処理されます。