[不建议使用此函数。 它在后续版本的 Windows 中可能已更改或不可用。]
MAPIDetails 函数显示一个对话框,其中包含所选地址列表条目的详细信息。
语法
MAPIDETAILS Mapidetails;
ULONG Mapidetails(
[in] LHANDLE lhSession,
[in] ULONG_PTR ulUIParam,
[in] lpMapiRecipDesc lpRecip,
[in] FLAGS flFlags,
ULONG ulReserved
)
{...}
parameters
[in] lhSession
表示简单 MAPI 会话或零的会话句柄。 如果 lhSession 参数的值为零,则 MAPI 将记录用户并创建仅在调用期间存在的会话。 此临时会话可以是现有共享会话,也可以是新会话。 如果用户需要其他信息才能成功完成登录,则会显示一个对话框。
[in] ulUIParam
父窗口句柄或零,指示如果显示对话框,则为应用程序模式。 如果 ulUIParam 参数包含父窗口句柄,则其类型为 HWND (强制转换为ULONG_PTR) 。 如果在调用期间未显示任何对话框,则忽略 ulUIParam 。
[in] lpRecip
指向要显示其详细信息的收件人的指针。 MAPIDetails 忽略此 MapiRecipDesc 结构的所有成员, ulEIDSize 和 lpEntryID 成员除外。 如果 ulEIDSize 的值为非零, 则 MAPIDetails 解析收件人条目。 如果 ulEIDSize 的值为零, 则 MAPIDetails 返回MAPI_E_AMBIGUOUS_RECIP值。
[in] flFlags
选项标志的位掩码。 可以设置以下标志。
ulReserved
保留;必须为零。
返回值
此函数返回以下值之一。
| 返回代码 | 说明 |
|---|---|
|
无法显示对话框,因为 lpRecips 参数指向的结构的 ulEIDSize 成员为零。 |
|
发生了一个或多个未指定的错误。 未显示任何对话框。 |
|
内存不足,无法继续。 未显示任何对话框。 |
|
lpRecip 参数中指定的接收方未知,或者接收方具有无效的 ulEIDSize 值。 未显示任何对话框。 |
|
没有默认登录,并且显示登录对话框时用户无法成功登录。 未显示任何对话框。 |
|
基础消息传送系统不支持该操作。 |
|
用户取消了登录对话框或详细信息对话框。 |
|
调用成功,并显示详细信息对话框。 |
注解
MAPIDetails 函数显示一个对话框,显示特定地址列表条目的详细信息。 显示名称和地址是对话框中显示的最小属性;可以显示更多信息,具体取决于通讯簿提供程序。 无法禁止显示详细信息对话框,但调用方可以请求它是只读的或可修改的。
只能为已解析的地址列表条目显示详细信息。 如果 MapiRecipDesc 结构的 ulEIDSize 成员的值为非零,则解析条目。 当 MAPIAddress 或 MAPIResolveName 函数返回条目并因此成为读取邮件的收件人时,将解析这些条目。
要求
| 目标平台 | Windows |
| 标头 | mapi.h |