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

LPMAPIRESOLVENAME

コールバック

シグネチャ

DWORD LPMAPIRESOLVENAME(
    UINT_PTR lhSession,
    UINT_PTR ulUIParam,
    LPSTR lpszName,
    DWORD flFlags,
    DWORD ulReserved,
    MapiRecipDesc** lppRecip
);

パラメーター

フィールド型説明
lhSessionUINT_PTR簡易 MAPI セッションを表すハンドル、または 0。lhSession パラメーターの値が 0 の場合、MAPI はユーザーをログオンさせ、この呼び出しの間だけ存在するセッションを作成します。この一時的なセッションは、既存の共有セッションの場合も、新しいセッションの場合もあります。必要であれば、ログオンダイアログボックスが表示されます。
ulUIParamUINT_PTR親ウィンドウのハンドル、または 0。0 を指定すると、ダイアログボックスが表示される場合はアプリケーションモーダルになります。ulUIParam パラメーターに親ウィンドウのハンドルを指定する場合、その型は HWND です(ULONG_PTR にキャストします)。呼び出し中にダイアログボックスが表示されない場合、 ulUIParam は無視されます。
lpszNameLPSTR解決する名前へのポインター。
flFlagsDWORD

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

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

公式ドキュメント

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

MAPIResolveName 関数は、ユーザーが入力したメッセージ受信者の名前を、あいまいさのないアドレス一覧のエントリに変換します。

戻り値

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

戻り値 説明
MAPI_E_AMBIGUOUS_RECIPIENT
要求された受信者が、一意のアドレス一覧エントリに解決されていないか、解決できませんでした。
MAPI_E_UNKNOWN_RECIPIENT
受信者をいずれのアドレスにも解決できませんでした。その受信者は存在しないか、不明である可能性があります。
MAPI_E_FAILURE
1 つ以上の特定できないエラーが発生しました。名前は解決されませんでした。
MAPI_E_INSUFFICIENT_MEMORY
処理を続行するためのメモリが不足していました。名前は解決されませんでした。
MAPI_E_LOGIN_FAILURE
既定のログオンが存在せず、ログオンダイアログボックスが表示されたときにユーザーがログオンに失敗しました。名前は解決されませんでした。
MAPI_E_NOT_SUPPORTED
この操作は、基盤となるメッセージングシステムでサポートされていませんでした。
MAPI_E_USER_ABORT
ユーザーがいずれかのダイアログボックスをキャンセルしました。名前は解決されませんでした。
SUCCESS_SUCCESS
呼び出しは成功し、名前が解決されました。

解説(Remarks)

MAPIResolveName 関数は、ユーザーが入力したメッセージ受信者の名前を、あいまいさのないアドレス一覧のエントリに解決します。必要であれば、候補となるエントリの中からユーザーに選択を促すこともできます。エントリについて完全に解決された情報を格納した受信者記述子構造体が割り当てられ、返されます。呼び出し元は、この MapiRecipDesc 構造体を、どこかの時点で MAPIFreeBuffer 関数を呼び出して解放する必要があります。MAPIResolveName がエラー値を返した場合は、MAPIFreeBuffer でメモリを解放する必要はありません。

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