IMessage::DeleteAttach

适用于:Outlook 2013 | Outlook 2016

删除附件。

HRESULT DeleteAttach(
ULONG ulAttachmentNum,
ULONG_PTR ulUIParam,
LPMAPIPROGRESS lpProgress,
ULONG ulFlags
);

参数

ulAttachmentNum

[in]要删除的附件的索引号。 这是附件 PR_ATTACH_NUM (PidTagAttachNumber) 属性的值。

ulUIParam

[in]此方法显示的任何对话框或窗口的父窗口的句柄。 除非 ulFlags 参数中设置了 ATTACH_DIALOG 标志,否则忽略 ulUIParam 参数。

lpProgress

[in]指向显示进度指示器的进度对象的指针。 如果在 lpProgress 中传递 NULL,则消息存储提供程序使用 MAPI 进度对象实现显示进度指示器。 除非在 ulFlags 中设置了 ATTACH_DIALOG 标志,否则将忽略 lpProgress 参数。

ulFlags

[in]控制用户界面显示的标志的位掩码。 可以设置以下标志:

ATTACH_DIALOG

请求在操作继续时显示进度指示器。

返回值

S_OK

附件已成功删除。

备注

IMessage::D eleteAttach 方法从邮件中删除附件。

在调用邮件的 IMAPIProp::SaveChanges 方法之前,不会永久删除已删除的附件。

给调用方的说明

在调用 DeleteAttach 之前,请为附件及其每个流调用 IUnknown::Release 方法。

由于删除附件的过程可能很长, 因此 DeleteAttach 提供了显示进度指示器的机制。 可以通过传递指向 IMAPIProgress 的指针来请求显示进度指示器 :IUnknown 实现,如果没有实现,则为 NULL。 还必须在 ulUIParam 参数中指定窗口句柄,并在 ulFlags 参数中指定ATTACH_DIALOG标志。

MFCMAPI 引用

有关 MFCMAPI 示例代码,请参阅下表。

文件 函数 Comment
AttachmentsDlg.cpp
CAttachmentsDlg::OnDeleteSelectedItem
MFCMAPI 使用 IMessage::D eleteAttach 方法删除所选附件。

另请参阅

IMAPIProp::SaveChanges

IMessage : IMAPIProp

MFCMAPI 代码示例