アドレス帳を検索Searching the address book

適用されます: OutlookApplies to: Outlook

MAPI �ł́A�����@�\�� 2 �‚̃��x�����������A�h���X���̃v���o�C�_�[���L���ɂ��܂��BMAPI enables address book providers to implement two levels of search functionality:

  • アドレス帳のエントリのPR_DISPLAY_NAME (PidTagDisplayName) プロパティを使用して指定した名前に一致する基本的なレベルです。A basic level that matches a specified name with the PR_DISPLAY_NAME (PidTagDisplayName) property of address book entries. このレベルでは、ユーザー、たとえば、北西で始まる名前の配布リストを表示またはブラウンは個々 のメッセージングのユーザーを検索します。This level allows users, for example, to view distribution lists with names beginning with Northwest or locate individual messaging users whose last name is Brown.

  • ���x�� PR_DISPLAY_NAME�ȊO�̃v���p�e�B�Ɉ�v���܂��B���̃��x���ɂ́A���b�Z�[�W���O����Ƃ������O�̎�ނ����̃A�h���X�ƃ��[�U�[�̌����ƌ�����i�荞�ނȂǁA���[�U�[���ł��܂��BAn advanced level that matches on properties other than PR_DISPLAY_NAME. This level allows users, for example, to further narrow their searches and find messaging users named Brown with a particular address type.

アドレス帳プロバイダーでは、両方のレベルで、基本的なレベルでは、そのコンテナーのそれぞれの検索をサポートしたり、まったくサポートしないように選択することが、ためにしない標準機能として実装することを検索します。Because address book providers can support searching for each of their containers at the basic level, at both levels, or choose not to support it at all, do not expect searching to be implemented as a standard feature. 特定のコンテナーが検索をサポートしているかどうかは、そのIMAPIContainer::SetSearchCriteriaメソッドの呼び出しで検索条件を確立するためにしようとします。To determine if a particular container supports searches, attempt to establish search criteria in a call to its IMAPIContainer::SetSearchCriteria method. SetSearchCriteriaでは、MAPI_E_NO_SUPPORT が返された場合、コンテナーは、検索をサポートしていません。If SetSearchCriteria returns MAPI_E_NO_SUPPORT, the container does not support searches.

検索をサポートするコンテナー、 IMAPIContainer::GetSearchCriteriaを呼び出すことによって確立された条件を取得します。In a container that supports searches, retrieve established criteria by calling IMAPIContainer::GetSearchCriteria. コンテナーの内容のテーブルが表示される前に、ユーザーを検索条件を求められる点を要求することもできます。You can also request that the user be prompted for search criteria before a container's contents table is displayed. このオプションを選択するには、コンテナーのPR_CONTAINER_FLAGS (PidTagContainerFlags) のプロパティの AB_FIND_ON_OPEN フラグを設定します。To choose this option, set the AB_FIND_ON_OPEN flag of the container's PR_CONTAINER_FLAGS (PidTagContainerFlags) property. 抽出条件を入力すると後、は、制限として保存され、 SetSearchCriteriaメソッドに渡されることが。After the user enters the criteria, it is stored as a restriction and passed to the SetSearchCriteria method. 設定 AB_FIND_ON_OPEN は、オンライン サービス、またはそのデータを低速リンクしているすべてのアドレス帳プロバイダーを使用する場合に特に便利です。Setting AB_FIND_ON_OPEN is particularly useful if you are using an online service or any address book provider that has a slow link to its data.

アドレス帳コンテナーの基本的な検索を実行するにはTo perform a basic search in an address book container

  1. ���̓�e�̃e�[�u����J�����߂̃R���e�i�[��IMAPIContainer::GetContentsTable���\�b�h��Ăяo���܂��BCall the container's IMAPIContainer::GetContentsTable method to open its contents table.

  2. �j�[�Y�ɍ������������@��I����܂��B[�I����ڂ͎��̂Ƃ���ł��BChoose a search technique that meets your needs. The choices include:

  3. �K�p���ꂽ��������Ɉ�v���邷�ׂĂ̍s��擾����IMAPITable::QueryRows���₢���킹���������B QueryRows�ɂ́A1 �ˆȏ�̈�v����s��Ԃ����Ƃ��ł��܂��BCall IMAPITable::QueryRows to retrieve any rows that meet your applied search criteria. QueryRows can return zero or more matching rows.

FindRowSortTable、およびRestrictメソッドは、クライアントまたはサービス プロバイダーによって作成できる任意のテーブルで利用可能なテーブルのメソッドです。The FindRow, SortTable, and Restrict methods are table methods that are available for any table that can be created, either by a client or a service provider. PR_ANRプロパティの制限およびIABContainer::ResolveNamesメソッドは、アドレス帳プロバイダーに固有のものし、あいまいな名前を解決するために使用します。The PR_ANR property restriction and IABContainer::ResolveNames method are specific to address book providers and are used for resolving ambiguous names. あいまいな名前は、それらに関連付けられているPR_ENTRYIDプロパティを持たない受信者リスト内のエントリです。Ambiguous names are entries in a recipient list that do not have a PR_ENTRYID property associated with them.

PR_ANR制限は、文字の文字列を単語に分割し、プレフィックス一致を使用してアドレス帳の情報を使用してこれらの単語と一致するアルゴリズムを起動します。The PR_ANR restriction invokes an algorithm that separates a character string into words and matches those words with information in the address book using prefix-matching. 一致するのに使用される情報は、アドレス帳プロバイダーに依存します。The information used for the matching depends on the address book provider. アドレス帳コンテナーのPR_ANRの制限をサポートするすべてのアドレス帳プロバイダーが必要です。All address book providers are required to support the PR_ANR restriction for their address book containers. 詳細については、名前解決の実装を参照してください。For more information, see Implementing Name Resolution.

IABContainer::ResolveNamesは、 PR_ANRの制限がコンテナーの内容のテーブルを開くことを必要とせず、複数の名前で処理を実行します。IABContainer::ResolveNames performs PR_ANR restriction processing on multiple names without requiring the container's contents table to be open. 呼び出すよりもはるかに高速にすることができます複数の名前を解決するのにはResolveNamesを 1 回の呼び出し、 PR_ANR複数回に制限します。Calling ResolveNames once to resolve multiple names can be much faster than invoking a PR_ANR restriction multiple times. ただし、アドレス帳プロバイダーは、 ResolveNamesをサポートする必要はありません。However, address book providers are not required to support ResolveNames.