IAddrBook::ResolveNameIAddrBook::ResolveName

適用されます: Outlook 2013 |Outlook 2016Applies to: Outlook 2013 | Outlook 2016

宛先リスト内の受信者にエントリの識別子を割り当て、名前解決を実行します。Performs name resolution, assigning entry identifiers to recipients in a recipient list.

HRESULT ResolveName(
  ULONG_PTR ulUIParam,
  ULONG ulFlags,
  LPSTR lpszNewEntryTitle,
  LPADRLIST lpAdrList
);

パラメーターParameters

ulUIParamulUIParam

[in]、表示されるダイアログ ボックスの親ウィンドウへのハンドルのあいまいさを解決するのにはユーザーに確認する、指定した場合。[in] A handle to the parent window of a dialog box that is shown, if specified, to prompt the user to resolve ambiguity.

ulFlagsulFlags

[in]解決プロセスのさまざまな側面を制御するフラグのビットマスクです。[in] A bitmask of flags that control various aspects of the resolution process. 次のフラグを設定することができます。The following flags can be set:

AB_UNICODEUIAB_UNICODEUI

その_lpszNewEntryTitle_が UNICODE 文字列であることを示します。Indicates that lpszNewEntryTitle is a UNICODE string.

MAPI_CACHE_ONLYMAPI_CACHE_ONLY

名前解決を実行するのにには、オフライン アドレス帳のみを使用します。Use only the offline address book to perform name resolution. たとえば、このフラグを使用すると、exchange キャッシュ モードでグローバル アドレス一覧 (GAL) を開き、クライアントとサーバー間のトラフィックを作成することがなく、キャッシュからそのアドレス帳のエントリにアクセスするのにクライアント アプリケーションを許可します。For example, you can use this flag to allow a client application to open the global address list (GAL) in cached exchange mode and access an entry in that address book from the cache without creating traffic between the client and the server. このフラグは、Exchange のアドレス帳プロバイダーでのみサポートします。This flag is supported only by the Exchange Address Book Provider.

MAPI_DIALOGMAPI_DIALOG

その他の名前解決情報をユーザーに確認するダイアログ ボックスが表示されます。Displays a dialog box to prompt the user for additional name resolution information. このフラグが設定されていない場合、ダイアログ ボックスは表示されません。If this flag is not set, no dialog box is displayed.

MAPI_UNICODEMAPI_UNICODE

PT_STRING8 の代わりに PT_UNICODE の種類のアドレス] ボックスの一覧で返されるプロパティがあることを示します。Indicates that the properties returned in the address list should be of type PT_UNICODE instead of PT_STRING8.

lpszNewEntryTitlelpszNewEntryTitle

[in]受信者を入力するように求めるダイアログ ボックスで、コントロールのタイトルのテキストへのポインター。[in] A pointer to text for the title of the control in the dialog box that prompts the user to enter a recipient. タイトルは、受信者の種類によって異なります。The title varies depending on the type of recipient. _LpszNewEntryTitle_パラメーターは NULL にできます。The lpszNewEntryTitle parameter can be NULL.

lpAdrListlpAdrList

[out]解決するのには受信者の名前のリストを格納するADRLIST構造体へのポインター。[in-out] A pointer to an ADRLIST structure that contains the list of recipient names to be resolved. IAddrBook::Addressメソッドでは、このADRLISTの構造体を作成できます。This ADRLIST structure can be created by the IAddrBook::Address method.

�߂�lReturn value

S_OKS_OK

名前解決の処理に成功しました。The name resolution process succeeded.

これらが同じMAPI_E_AMBIGUOUS_RECIP

_LpAdrList_パラメーターで 1 つ以上の受信者には、アドレス帳に複数のエントリが一致します。At least one recipient in the lpAdrList parameter matched more than one entry in the address book. 通常、MAPI_DIALOG フラグを設定すると、ダイアログ ボックスの表示を禁止する場合にこの値が返されます。Usually, this value is returned when the MAPI_DIALOG flag is set, prohibiting the display of a dialog box.

MAPI_E_NOT_FOUNDMAPI_E_NOT_FOUND

_LpAdrList_パラメーターで 1 つ以上の受信者を解決できません。At least one recipient in the lpAdrList parameter cannot be resolved. 通常、MAPI_DIALOG フラグを設定すると、ダイアログ ボックスの表示を禁止する場合にこの値が返されます。Usually, this value is returned when the MAPI_DIALOG flag is set, prohibiting the display of a dialog box.

注釈Remarks

クライアントとサービス ・ プロバイダーは、名前解決プロセスを開始するResolveNameメソッドを呼び出します。Clients and service providers call the ResolveName method to initiate the name resolution process. 未解決のエントリは、エントリがないまだエントリの識別子またはプロパティのPR_ENTRYID (PidTagEntryId) です。An unresolved entry is an entry that does not yet have an entry identifier or PR_ENTRYID (PidTagEntryId) property.

ResolveNameは、 _lpAdrList_パラメーターで渡されたアドレス一覧に未解決のエントリごとに次のプロセスを通過します。ResolveName goes through the following process for each unresolved entry in the address list passed in the lpAdrList parameter.

  1. 受信者のアドレスの種類が SMTP アドレスの形式に準拠している場合 (表示名@ domain.top ・ レベル ・ ドメイン)、 ResolveNameはそれに 1 回限りのエントリの識別子を割り当てます。If the address type of the recipient adheres to the format of an SMTP address ( displayname@ domain.top-level-domain), ResolveName assigns it a one-off entry identifier.

  2. PR_AB_SEARCH_PATH (PidTagAbSearchPath) のプロパティ内の各コンテナーには、 ResolveNameは、 IABContainer::ResolveNamesメソッドを呼び出します。For each container in the PR_AB_SEARCH_PATH (PidTagAbSearchPath) property, ResolveName calls the IABContainer::ResolveNames method. ResolveNamesが表示名のエントリのいずれかに属しますが、未解決の各受信者の表示名を一致させようとするとします。ResolveNames tries to match the display name of each unresolved recipient with a display name that belongs to one of its entries.

  3. コンテナーがResolveNamesをサポートしていない場合、 ResolveNamePR_ANR (PidTagAnr) プロパティの制限を使用してコンテナーの内容のテーブルを制限します。If a container does not support ResolveNames, ResolveName restricts the container's contents table by using a PR_ANR (PidTagAnr) property restriction. この制限には、「最適な推測」一致する受信者を検索する検索の種類を実行するコンテナーが発生します。This restriction causes the container to perform a "best guess" type of search to locate a matching recipient. すべてのコンテナーには、 PR_ANRプロパティ制限をサポートする必要があります。All containers must support the PR_ANR property restriction.

  4. コンテナーに複数の名前に一致する受信者が返されるときResolveNameは、MAPI_DIALOG フラグが設定されて、ユーザーが正しい名前を選択できるようにする場合にダイアログ ボックスを表示します。When a container returns a recipient that matches multiple names, ResolveName displays a dialog box if the MAPI_DIALOG flag is set, which lets the user select the correct name.

  5. すべてのPR_AB_SEARCH_PATHプロパティのコンテナーが呼び出された場合は、一致するものが見つかりませんでした、受信者は未解決のままになります。If all of the containers in the PR_AB_SEARCH_PATH property have been called and no match has been found, the recipient remains unresolved.

1 つまたは複数の受信者が解決できない、 ResolveNameは MAPI_E_NOT_FOUND を返します。If one or more recipients are unresolved, ResolveName returns MAPI_E_NOT_FOUND. ResolveNameは] ダイアログ ボックスでは、解決できませんでしたが、あいまいな解像度を 1 つまたは複数の宛先があった場合、MAPI_DIALOG フラグが設定されていないために、これらが同じを返します。If one or more recipients had ambiguous resolution that could not be resolved with a dialog box, or because the MAPI_DIALOG flag was not set, ResolveName returns MAPI_E_AMBIGUOUS_RECIP. 一部の受信者があいまいで、いくつかを解決することはできません、 ResolveNameはいずれかのエラー値を返すことができます。When some of the recipients are ambiguous and some cannot be resolved, ResolveName can return either error value.

名前を解決できない場合、クライアントは特別な形式のアドレスとエントリの識別子を持つ一時アドレスを作成できます。If a name cannot be resolved, the client can create a one-off address that has a specially formatted address and entry identifier. 一時エントリ id の形式の詳細については、 1 回限りのエントリ Idを参照してください。For more information about the format of one-off entry identifiers, see One-Off Entry Identifiers. 一時アドレスの形式の詳細については、一時アドレスを参照してください。For more information about the format of one-off addresses, see One-Off Addresses.

MAPI のADRLIST新しいエントリのタイトルResolveName; 文字の Unicode 文字列をサポートしていますMAPI_UNICODE フラグを設定する場合は、 ADRENTRY構造体の PT_UNICODE の種類として、次のプロパティが返されます。MAPI supports Unicode character strings for the ADRLIST and the new entry title parameters to ResolveName; if you set the MAPI_UNICODE flag, the following properties are returned as type PT_UNICODE in the ADRENTRY structures:

ただし、PT_STRING8 を型としては、 PR_7BIT_DISPLAY_NAME (PidTag7BitDisplayName) のプロパティは常に返されます。However, the PR_7BIT_DISPLAY_NAME (PidTag7BitDisplayName) property is always returned as type PT_STRING8.

MFCMAPI 参照MFCMAPI reference

MFCMAPI �T���v�� �R�[�h�ł́A���̕\��Q�Ƃ��Ă��������BFor MFCMAPI sample code, see the following table.

�t�@�C��File �֐�Function �R�����gComment
MAPIABFunctions.cppMAPIABFunctions.cpp
AddOneOffAddressAddOneOffAddress
MFCMAPI では、メッセージに追加する前に 1 回限りのアドレスを解決するのには、 ResolveNameメソッドを使用します。MFCMAPI uses the ResolveName method to resolve a one-off address before adding it to a message.
MAPIABFunctions.cppMAPIABFunctions.cpp
AddRecipientAddRecipient
MFCMAPI では、 ResolveNameメソッドを使用して、表示名、アドレス帳エントリを検索します。MFCMAPI uses the ResolveName method to look up an address book entry by display name.

関連項目See also

ADRLISTADRLIST

IABContainer::ResolveNamesIABContainer::ResolveNames

IAddrBook::AddressIAddrBook::Address

IAddrBook : IMAPIPropIAddrBook : IMAPIProp

[�R��h �T���v���Ƃ��� MFCMAPIMFCMAPI as a Code Sample