IMsgStore::SetLockState

适用于:Outlook 2013 | Outlook 2016

锁定或解锁消息。 此方法仅由 MAPI 后台处理程序调用。

HRESULT SetLockState(
  LPMESSAGE lpMessage,
  ULONG ulLockState  
);

参数

lpMessage

[in]指向要锁定或解锁的消息的指针。

ulLockState

[in]一个 值,该值指示消息是应锁定还是应解锁。 以下值之一有效:

MSG_LOCKED

应锁定消息。

MSG_UNLOCKED

消息应已解锁。

返回值

S_OK

已成功设置消息的锁定状态。

备注

IMsgStore::SetLockState 方法锁定或解锁消息。 SetLockState 只能由 MAPI 后台处理程序在发送消息时调用。

通常,当 MAPI 后台处理程序调用 SetLockState 来锁定消息时,它仅锁定最早的消息 (即排队等待 MAPI 后台处理程序发送) 的下一条消息。 如果队列中最早的消息正在等待暂时不可用的传输提供程序,并且队列中的下一条消息使用不同的传输提供程序,则 MAPI 后台处理程序可以开始处理后面的消息。 它通过使用 SetLockState 锁定该消息开始处理。

针对实现者的说明

MAPI 后台处理程序调用 SetLockStateulLockState 参数设置为 MSG_LOCKED 后,调用 IMsgStore::AbortSubmit 方法来取消消息的传输必须失败。

SetLockState 实现中调用消息的 IMAPIProp::SaveChanges 方法,以便保存在收到 SetLockState 调用之前对消息所做的任何更改。

另请参阅

IMsgStore::AbortSubmit

IMsgStore::FinishedMsg

IMsgStore : IMAPIProp