IMAPIProp::DeleteProps
适用于:Outlook 2013 | Outlook 2016
从 对象中删除一个或多个属性。
HRESULT DeleteProps(
LPSPropTagArray lpPropTagArray,
LPSPropProblemArray FAR * lppProblems
);
参数
lpPropTagArray
[in]指向属性标记数组的指针,这些标记指示要删除的属性。 lpPropTagArray 指向的 SPropTagArray 结构的 cValues 成员不能为零,并且 lpPropTagArray 参数本身不得为 NULL。
lppProblems
[in,out]输入时,指向 指向 SPropProblemArray 结构的指针的指针;否则为 NULL,指示不需要错误信息。 如果 lppProblems 是输入上的有效指针, 则 DeleteProps 将返回有关删除一个或多个属性时出现的错误的详细信息。
返回值
S_OK
已成功删除属性。
MAPI_E_NO_ACCESS
调用方没有足够的权限删除属性。
备注
IMAPIProp::D eleteProps 方法从当前对象中删除一个或多个属性。
针对实现者的说明
不必允许从所有对象中删除属性。 如果对象不可修改,请从 DeleteProps 方法返回MAPI_E_NO_ACCESS。
给调用方的说明
不必为 lpPropTagArray 参数指向的属性标记数组中的每个属性标记设置属性类型。 忽略属性类型;仅使用属性标识符。
请注意,某些对象不允许修改,并且这些对象从 DeleteProps 方法返回MAPI_E_NO_ACCESS。 其他对象允许删除某些属性,但不允许删除其他属性。 如果仅删除某些属性时出现问题, DeleteProps 将返回S_OK。 如果在 lppProblems 参数中传递了有效的指针, DeleteProps 会将指针设置为包含每个属性问题的详细信息 的 SPropProblemArray 结构。 例如,如果要删除邮件的所有属性,并且其一个或多个附件出现问题, 则 SPropPropProblemArray 结构将包含 PR_MESSAGE_ATTACHMENTS (PidTagMessageAttachments) 属性的条目。
仅当 DeleteProps 返回S_OK时,lppProblems 指向的结构才有效。 如果 DeleteProps 返回错误,请不要尝试使用 SPropProblemArray 结构。 相反,调用对象的 IMAPIProp::GetLastError 方法以获取有关错误的详细信息。
通过调用 MAPIFreeBuffer 函数释放返回的 SPropProblemArray 结构。
MFCMAPI 引用
有关 MFCMAPI 示例代码,请参阅下表。
文件 | 函数 | Comment |
---|---|---|
MAPIFunctions.cpp |
DeleteProperty |
MFCMAPI 使用 IMAPIProp::D eleteProps 方法从对象中删除属性。 |