IAddrBook::Address
適用対象: Outlook 2013 | Outlook 2016
[Outlook アドレス帳] ダイアログ ボックスを表示します。
HRESULT Address(
ULONG_PTR FAR * lpulUIParam,
LPADRPARM lpAdrParms,
LPADRLIST FAR * lppAdrList
);
パラメーター
lpulUIParam
[in, out]ダイアログ ボックスの親ウィンドウのハンドルへのポインター。 入力時には、ウィンドウ ハンドルを常に渡す必要があります。 出力時に、lpAdrParms パラメーターの ulFlags メンバーがDIALOG_SDIに設定されている場合、モードレス ダイアログ ボックスのウィンドウ ハンドルが返されます。 注釈を参照してください。
lpAdrParms
[in, out]アドレス ダイアログ ボックスの表示と動作を制御する ADRPARM 構造体へのポインター。
lppAdrList
[in, out]受信者情報を含む ADRLIST 構造体へのポインターへのポインター。 入力時に、このパラメーターは NULL にすることも、有効なポインターを指すことができます。 出力時に、このパラメーターは有効な受信者情報へのポインターを指します。
戻り値
S_OK
[共通アドレス] ダイアログ ボックスが正常に表示されました。
注釈
lpAdrParms パラメーターの ulFlags メンバーが、出力時にモードレス ダイアログ ボックスのウィンドウ ハンドルが返されるDIALOG_SDIに設定されている場合、Outlook では無視されます。ダイアログのモーダル バージョンは、常に Outlook 以外のクライアントに表示されます。
lppAdrList パラメーターを使用して MAPI によって呼び出し元に返される ADRLIST 構造体には、受信者ごとに 1 つの構造体である ADRENTRY 構造体の配列が含まれています。 lpMods パラメーターの送信メッセージの IMessage::ModifyRecipients メソッドに渡されると、ADRLIST 構造体を使用してその受信者リストを更新できます。
ADRLIST 構造体内の各 ADRENTRY 構造体には、0 個以上の SPropValue 構造体が含まれています。この構造体は、受信者に設定されたすべてのプロパティに対して 1 つの構造体です。 Address メソッドによって表示されるダイアログ ボックスを使用して受信者を削除する場合、SPropValue 構造体は 0 にすることができます。 1 つ以上 の SPropValue 構造体がある場合、対応する ADRENTRY 構造体を使用して受信者を追加または更新します。 受信者は解決できます。これは、 SPropValue 構造体の 1 つに受信者の PR_ENTRYID (PidTagEntryId) プロパティが記述されているか、未解決であることを示します。 これは、PR_ENTRYID プロパティが見つからないことを示します。
解決された受信者には、 PR_ENTRYIDに加えて、次のプロパティが含まれます。
PR_RECIPIENT_TYPE (PidTagRecipientType)
PR_DISPLAY_NAME (PidTagDisplayName)
PR_ADDRTYPE (PidTagAddressType)
PR_DISPLAY_TYPE (PidTagDisplayType)
呼び出し元が渡す ADRLIST 構造体は、MAPI が返す構造体とは異なるサイズである可能性があります。 MAPI は、より大きな ADRLIST 構造体を返す必要がある場合は、元の構造体を解放し、新しい構造体を割り当てます。 ADRLIST 構造体にメモリを割り当てる場合は、SPropValue 構造体ごとに個別にメモリを割り当てます。 ADRLIST 構造体を割り当てて解放する方法の詳細については、「ADRLIST 構造体と SRowSet 構造体のメモリ管理」を参照してください。
アドレスは、lpAdrParms パラメーターの ADRPARM 構造体の ulFlags メンバーにDIALOG_SDI フラグが設定されている場合、すぐにを返します。 DIALOG_SDI フラグは、Outlook 以外のクライアントでは無視されます。 DIALOG_SDIが無視された場合、ダイアログのモーダル バージョンが表示され、 lpulUIParam ではハンドルへのポインターが予期されません。
アドレスは、lpAdrParms パラメーターの ADRPARM の ulFlags メンバーにAB_UNICODEUIが指定されていて、ADRLIST で Unicode 文字列をサポートしている場合、ADRPARM 構造体で Unicode 文字列をサポートします。 Unicode 文字列は、Outlook アドレス帳ダイアログ ボックスに表示される前に、マルチバイト文字列 (MBCS) 形式に変換されます。
MFCMAPI リファレンス
MFCMAPI のサンプル コードについては、次の表を参照してください。
ファイル | 関数 | コメント |
---|---|---|
MAPIStoreFunctions.cpp |
OpenOtherUsersMailboxFromGal |
MFCMAPI は Address メソッドを使用して、ユーザーが開くメールボックスを選択できるようにします。 |