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

LPMAPIDETAILS

コールバック

シグネチャ

DWORD LPMAPIDETAILS(
    UINT_PTR lhSession,
    UINT_PTR ulUIParam,
    MapiRecipDesc* lpRecip,
    DWORD flFlags,
    DWORD ulReserved
);

パラメーター

フィールド型説明
lhSessionUINT_PTR簡易 MAPI セッションを表すセッションハンドル、または 0 です。lhSession パラメーターの値が 0 の場合、MAPI はユーザーをログオンさせ、呼び出しの間だけ存在するセッションを作成します。この一時的なセッションは、既存の共有セッションの場合も新しいセッションの場合もあります。ログオンを正常に完了するためにユーザーからの追加情報が必要な場合は、ダイアログボックスが表示されます。
ulUIParamUINT_PTR親ウィンドウのハンドル、または 0 です。0 の場合、ダイアログボックスが表示されるときはアプリケーションモーダルになります。ulUIParam パラメーターに親ウィンドウのハンドルを指定する場合、その型は HWND です (ULONG_PTR にキャストします)。呼び出し中にダイアログボックスが表示されない場合、 ulUIParam は無視されます。
lpRecipMapiRecipDesc*詳細を表示する対象の受信者へのポインターです。 MAPIDetails は、この MapiRecipDesc 構造体のうち、ulEIDSize メンバーと lpEntryID メンバー以外のすべてのメンバーを無視します。ulEIDSize の値が 0 以外の場合、MAPIDetails は受信者エントリを解決します。ulEIDSize の値が 0 の場合、MAPIDetails は MAPI_E_AMBIGUOUS_RECIP を返します。
flFlagsDWORD

オプションフラグのビットマスクです。次のフラグを設定できます。

値 意味
MAPI_AB_NOMODIFY
呼び出し元は、ダイアログボックスを読み取り専用にして変更を禁止するよう要求します。MAPIDetails がこの要求に従うかどうかは保証されません。
MAPI_LOGON_UI
必要に応じて、ユーザーにログオンを求めるダイアログボックスを表示します。MAPI_LOGON_UI フラグが設定されていない場合、クライアントアプリケーションはログオンダイアログボックスを表示せず、ユーザーがログオンしていなければエラー値を返します。
MAPI_NEW_SESSION
環境の共有セッションを取得するのではなく、新しいセッションの作成を試みます。MAPI_NEW_SESSION フラグが設定されていない場合、MAPIDetails は既存の共有セッションを使用します。
ulReservedDWORD予約されています。0 を指定する必要があります。

公式ドキュメント

[この関数の使用は推奨されません。以降のバージョンの Windows では、変更されるか利用できなくなる可能性があります。]

MAPIDetails 関数は、選択されたアドレス一覧エントリの詳細を表示するダイアログボックスを表示します。

戻り値

この関数は、次のいずれかの値を返します。

戻り値 説明
MAPI_E_AMBIGUOUS_RECIPIENT
lpRecips パラメーターが指す構造体の ulEIDSize メンバーが 0 であったため、ダイアログボックスを表示できませんでした。
MAPI_E_FAILURE
1 つ以上の不特定のエラーが発生しました。ダイアログボックスは表示されませんでした。
MAPI_E_INSUFFICIENT_MEMORY
処理を続行するためのメモリが不足していました。ダイアログボックスは表示されませんでした。
MAPI_E_INVALID_RECIPS
lpRecip パラメーターで指定された受信者が不明であるか、受信者の ulEIDSize の値が無効でした。ダイアログボックスは表示されませんでした。
MAPI_E_LOGIN_FAILURE
既定のログオンが存在せず、ログオンダイアログボックスが表示されたときにユーザーがログオンに失敗しました。ダイアログボックスは表示されませんでした。
MAPI_E_NOT_SUPPORTED
この操作は、基になるメッセージングシステムでサポートされていませんでした。
MAPI_E_USER_ABORT
ユーザーがログオンダイアログボックスまたは詳細ダイアログボックスをキャンセルしました。
SUCCESS_SUCCESS
呼び出しは成功し、詳細ダイアログボックスが表示されました。

解説(Remarks)

MAPIDetails 関数は、特定のアドレス一覧エントリの詳細を示すダイアログボックスを表示します。ダイアログボックスに表示される最小限の属性は表示名とアドレスですが、アドレス帳プロバイダーによってはさらに多くの情報が表示されることもあります。詳細ダイアログボックスの表示を抑止することはできませんが、呼び出し元は読み取り専用にするか変更可能にするかを要求できます。

詳細を表示できるのは、解決済みのアドレス一覧エントリだけです。エントリが解決済みであるとは、MapiRecipDesc 構造体の ulEIDSize メンバーの値が 0 以外であることを指します。エントリは、MAPIAddress 関数または MAPIResolveName 関数から返されるとき、および受信したメールの受信者として得られるときに解決されます。

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