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 方法删除所选附件。 |