Win32 API 日本語リファレンス
ホームSystem.Search › ISearchCatalogManager

ISearchCatalogManager

COM
IIDab310581-ac80-11d1-8df3-00c04fb6ef50継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

再インデックスやタイムアウトの設定など、検索カタログを管理するためのメソッドを提供します。

メソッド 26

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT get_Name(LPWSTR* pszName)

現在のカタログの名前を取得します。

pszNameLPWSTR*out現在のカタログの名前を格納した、null で終わる Unicode バッファーへのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 4 HRESULT GetParameter(LPWSTR pszName, PROPVARIANT** ppValue)

実装されていません。(ISearchCatalogManager.GetParameter)

pszNameLPWSTRin取得するパラメーターの名前。
ppValuePROPVARIANT**outパラメーターの値へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 5 HRESULT SetParameter(LPWSTR pszName, PROPVARIANT* pValue)

カタログの名前と値のパラメーターを設定します。

pszNameLPWSTRin変更するパラメーターの名前。
pValuePROPVARIANT*inパラメーターの新しい値へのポインター。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 6 HRESULT GetCatalogStatus(CatalogStatus* pStatus, CatalogPausedReason* pPausedReason)

カタログの状態を取得します。

pStatusCatalogStatus*outCatalogStatus 列挙型の値へのポインターを受け取ります。pStatusCATALOG_STATUS_PAUSED の場合は、pPausedReason パラメーターから詳細な情報を得られます。
pPausedReasonCatalogPausedReason*outカタログが一時停止している理由を示す CatalogPausedReason 列挙型の値へのポインターを受け取ります。カタログの状態が CATALOG_STATUS_PAUSED でない場合、このパラメーターは CATALOG_PAUSED_REASON_NONE を受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 7 HRESULT Reset()

データベースを再構築して完全なインデックス作成を行い、基になるカタログをリセットします。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

リセットには非常に長い時間がかかることがあり、その間は検索可能な情報がほとんど、またはまったくありません。

vtbl 8 HRESULT Reindex()

カタログ内のすべての URL を再インデックスします。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

古い情報は、再インデックス中に新しい情報で置き換えられるまでカタログ内に残ります。

vtbl 9 HRESULT ReindexMatchingURLs(LPWSTR pszPattern)

指定したパターンに一致するすべての項目を再インデックスします。このメソッドは Windows 7 より前では実装されていませんでした。

pszPatternLPWSTRin再インデックスの対象を照合するパターンへのポインター。パターンには *.pdf のような標準的なパターンのほか、file:///c:\MyStuff*.pdf のような URL 形式のパターンも指定できます。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

このメソッドは Windows 7 で完全に実装されています。

vtbl 10 HRESULT ReindexSearchRoot(LPWSTR pszRootURL)

指定したルート配下のすべての URL を再インデックスします。

pszRootURLLPWSTRin検索のルートとなる URL を格納した、null で終わる Unicode バッファーへのポインター。この URL は、あらかじめ ISearchCrawlScopeManager::AddRoot で登録された検索ルートである必要があります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

インデクサーは、このメソッドが正常に復帰した時点で、pszRootURL 配下のすべての開始ページに対する増分クロールを開始します。

古い情報は、再インデックス中に新しい情報で置き換えられるまでカタログ内に残ります。

vtbl 11 HRESULT put_ConnectTimeout(DWORD dwConnectTimeout)

TIMEOUT_INFO 構造体の接続タイムアウト値を秒単位で設定します。

dwConnectTimeoutDWORDin接続の応答を待機する秒数。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

インデクサーは、ドキュメントの最初のチャンクを接続タイムアウト時間内に、以降のチャンクをデータタイムアウト時間内に受信することを想定しています。これらのタイムアウト値は、フィルターやプロトコルハンドラーの失敗やパフォーマンス問題の発生を防ぐのに役立ちます。

vtbl 12 HRESULT get_ConnectTimeout(DWORD* pdwConnectTimeout)

インデックス作成のためにストアへ接続する際の接続タイムアウト値を取得します。

pdwConnectTimeoutDWORD*outTIMEOUT_INFO 構造体のタイムアウト値(秒単位)へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

インデクサーは、ドキュメントの最初のチャンクを接続タイムアウト時間内に、以降のチャンクをデータタイムアウト時間内に受信することを想定しています。これらのタイムアウト値は、フィルターやプロトコルハンドラーの失敗やパフォーマンス問題の発生を防ぐのに役立ちます。

vtbl 13 HRESULT put_DataTimeout(DWORD dwDataTimeout)

インデクサーと検索フィルターホスト間のデータのやり取りに対するタイムアウト値を設定します。この情報は TIMEOUT_INFO 構造体に格納され、秒単位で表されます。

dwDataTimeoutDWORDinインデクサーがデータのチャンクとチャンクの間で待機する秒数。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

インデクサーは、ドキュメントの最初のチャンクを接続タイムアウト時間内に、以降のチャンクをデータタイムアウト時間内に受信することを想定しています。これらのタイムアウト値は、フィルターやプロトコルハンドラーの失敗やパフォーマンス問題の発生を防ぐのに役立ちます。

vtbl 14 HRESULT get_DataTimeout(DWORD* pdwDataTimeout)

インデクサーと検索フィルターホスト間のデータのやり取りに対するデータタイムアウト値を秒単位で取得します。この値は TIMEOUT_INFO 構造体に格納されています。

pdwDataTimeoutDWORD*outデータのやり取りに関する TIMEOUT_INFO の値(データのやり取りを待機する時間)へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

インデクサーは、ドキュメントの最初のチャンクを接続タイムアウト時間内に、以降のチャンクをデータタイムアウト時間内に受信することを想定しています。これらのタイムアウト値は、フィルターやプロトコルハンドラーの失敗やパフォーマンス問題の発生を防ぐのに役立ちます。

vtbl 15 HRESULT NumberOfItems(INT* plCount)

カタログ内の項目数を取得します。

plCountINT*outカタログ内の項目数へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 16 HRESULT NumberOfItemsToIndex(INT* plIncrementalCount, INT* plNotificationQueue, INT* plHighPriorityQueue)

カタログ内でインデックス作成の対象となる項目数を取得します。

plIncrementalCountINT*out次回の増分インデックス作成でインデックスされる項目数へのポインターを受け取ります。
plNotificationQueueINT*out通知キュー内の項目数へのポインターを受け取ります。
plHighPriorityQueueINT*out高優先度キュー内の項目数へのポインターを受け取ります。plHighPriorityQueue の項目が最初にインデックスされます。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 17 HRESULT URLBeingIndexed(LPWSTR* pszUrl)

現在インデックス作成中の URL を取得します。インデックス作成が実行されていない場合、pszUrl には NULL が設定されます。

pszUrlLPWSTR*out現在インデックス作成中の URL へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 18 HRESULT GetURLIndexingState(LPWSTR pszURL, DWORD* pdwState)

実装されていません。(ISearchCatalogManager.GetURLIndexingState)

pszURLLPWSTRin
pdwStateDWORD*out

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 19 HRESULT GetPersistentItemsChangedSink(ISearchPersistentItemsChangedSink** ppISearchPersistentItemsChangedSink)

クライアント向けの変更通知イベントシンクインターフェイスを取得します。このメソッドは、クライアントアプリケーションやプロトコルハンドラーがインデクサーに変更を通知するために使用します。

ppISearchPersistentItemsChangedSinkISearchPersistentItemsChangedSink**outこのカタログ用の新しい ISearchPersistentItemsChangedSink インターフェイスへのポインターのアドレスを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 20 HRESULT RegisterViewForNotification(LPWSTR pszView, ISearchViewChangedSink* pViewChangedSink, DWORD* pdwCookie)

実装されていません。(ISearchCatalogManager.RegisterViewForNotification)

pszViewLPWSTRinビューの名前へのポインター。
pViewChangedSinkISearchViewChangedSink*in通知を受け取る ISearchViewChangedSink オブジェクトへのポインター。
pdwCookieDWORD*out

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 21 HRESULT GetItemsChangedSink(ISearchNotifyInlineSite* pISearchNotifyInlineSite, GUID* riid, void** ppv, GUID* pGUIDCatalogResetSignature, GUID* pGUIDCheckPointSignature, DWORD* pdwLastCheckPointNumber)

変更通知シンクインターフェイスを取得します。

pISearchNotifyInlineSiteISearchNotifyInlineSite*in呼び出し側の ISearchNotifyInlineSite インターフェイスへのポインター。
riidGUID*inISearchItemsChangedSink インターフェイスの UUID。
ppvvoid**outISearchItemsChangedSink インターフェイスへのポインターを受け取ります。
pGUIDCatalogResetSignatureGUID*outカタログのリセットを表す GUID へのポインターを受け取ります。この GUID が変化した場合は、すべての通知を再送する必要があります。
pGUIDCheckPointSignatureGUID*outチェックポイントを表す GUID へのポインターを受け取ります。
pdwLastCheckPointNumberDWORD*out最後に保存されるチェックポイントを示す番号へのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 22 HRESULT UnregisterViewForNotification(DWORD dwCookie)

実装されていません。(ISearchCatalogManager.UnregisterViewForNotification)

dwCookieDWORDin

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 23 HRESULT SetExtensionClusion(LPWSTR pszExtension, BOOL fExclude)

実装されていません。(ISearchCatalogManager.SetExtensionClusion)

pszExtensionLPWSTRin
fExcludeBOOLin

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 24 HRESULT EnumerateExcludedExtensions(IEnumString** ppExtensions)

実装されていません。(ISearchCatalogManager.EnumerateExcludedExtensions)

ppExtensionsIEnumString**out除外されている拡張子の列挙リストへのポインターのアドレスを返します。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 25 HRESULT GetQueryHelper(ISearchQueryHelper** ppSearchQueryHelper)

現在のカタログに対する ISearchQueryHelper インターフェイスを取得します。

ppSearchQueryHelperISearchQueryHelper**out既定の設定を持つ ISearchQueryHelper インターフェイスの新しいインスタンスへのポインターのアドレスを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

ISearchQueryHelper インターフェイスを作成した後、このインターフェイスの put... メソッドを使用して設定を変更します。ISearchQueryHelper オブジェクトの設定は、再度変更されるか、その項目が解放されるまでの間のみ有効です。次に項目が作成されたときは、設定は既定値になります。

vtbl 26 HRESULT put_DiacriticSensitivity(BOOL fDiacriticSensitive)

カタログがダイアクリティカルマークを区別するかどうかを決定する値を設定します。ダイアクリティカルマークとは、特別な音価や発音を示すために文字に付加される記号です。

fDiacriticSensitiveBOOLinカタログがダイアクリティカルマークを区別するかどうかを決定するブール値。カタログがダイアクリティカルマークを区別して認識する場合は TRUE、それ以外の場合は FALSE です。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 27 HRESULT get_DiacriticSensitivity(BOOL* pfDiacriticSensitive)

カタログがダイアクリティカルマークを区別するかどうかを示す値を取得します。ダイアクリティカルマークとは、特別な音価や発音を示すために文字に付加される記号です。

pfDiacriticSensitiveBOOL*outカタログがダイアクリティカルマークを区別するかどうかを示すブール値へのポインターを受け取ります。カタログがダイアクリティカルマークを区別して認識する場合は TRUE、それ以外の場合は FALSE です。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 28 HRESULT GetCrawlScopeManager(ISearchCrawlScopeManager** ppCrawlScopeManager)

この検索カタログに対する ISearchCrawlScopeManager インターフェイスを取得します。

ppCrawlScopeManagerISearchCrawlScopeManager**out新しい ISearchCrawlScopeManager インターフェイスへのポインターを受け取ります。

戻り値

型: HRESULT

このメソッドが成功すると S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ISearchCatalogManager "{AB310581-AC80-11D1-8DF3-00C04FB6EF50}"
#usecom global ISearchCatalogManager IID_ISearchCatalogManager "{}"
#comfunc global ISearchCatalogManager_get_Name                       3 var
#comfunc global ISearchCatalogManager_GetParameter                   4 wstr,var
#comfunc global ISearchCatalogManager_SetParameter                   5 wstr,var
#comfunc global ISearchCatalogManager_GetCatalogStatus               6 var,var
#comfunc global ISearchCatalogManager_Reset                          7
#comfunc global ISearchCatalogManager_Reindex                        8
#comfunc global ISearchCatalogManager_ReindexMatchingURLs            9 wstr
#comfunc global ISearchCatalogManager_ReindexSearchRoot              10 wstr
#comfunc global ISearchCatalogManager_put_ConnectTimeout             11 int
#comfunc global ISearchCatalogManager_get_ConnectTimeout             12 var
#comfunc global ISearchCatalogManager_put_DataTimeout                13 int
#comfunc global ISearchCatalogManager_get_DataTimeout                14 var
#comfunc global ISearchCatalogManager_NumberOfItems                  15 var
#comfunc global ISearchCatalogManager_NumberOfItemsToIndex           16 var,var,var
#comfunc global ISearchCatalogManager_URLBeingIndexed                17 var
#comfunc global ISearchCatalogManager_GetURLIndexingState            18 wstr,var
#comfunc global ISearchCatalogManager_GetPersistentItemsChangedSink  19 sptr
#comfunc global ISearchCatalogManager_RegisterViewForNotification    20 wstr,sptr,var
#comfunc global ISearchCatalogManager_GetItemsChangedSink            21 sptr,var,sptr,var,var,var
#comfunc global ISearchCatalogManager_UnregisterViewForNotification  22 int
#comfunc global ISearchCatalogManager_SetExtensionClusion            23 wstr,int
#comfunc global ISearchCatalogManager_EnumerateExcludedExtensions    24 sptr
#comfunc global ISearchCatalogManager_GetQueryHelper                 25 sptr
#comfunc global ISearchCatalogManager_put_DiacriticSensitivity       26 int
#comfunc global ISearchCatalogManager_get_DiacriticSensitivity       27 var
#comfunc global ISearchCatalogManager_GetCrawlScopeManager           28 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。