Compartilhar via


IMsgStore::SetLockState

Aplica-se a: Outlook 2013 | Outlook 2016

Bloqueia ou desbloqueia uma mensagem. Esse método é chamado apenas pelo spooler MAPI.

HRESULT SetLockState(
  LPMESSAGE lpMessage,
  ULONG ulLockState  
);

Parâmetros

Lpmessage

[in] Um ponteiro para a mensagem para bloquear ou desbloquear.

ulLockState

[in] Um valor que indica se a mensagem deve ser bloqueada ou desbloqueada. Um dos seguintes valores é válido:

MSG_LOCKED

A mensagem deve ser bloqueada.

MSG_UNLOCKED

A mensagem deve ser desbloqueada.

Valor de retorno

S_OK

O estado de bloqueio da mensagem foi definido com êxito.

Comentários

O método IMsgStore::SetLockState bloqueia ou desbloqueia uma mensagem. SetLockState só pode ser chamado pelo spooler MAPI enquanto ele está enviando a mensagem.

Normalmente, quando o spooler MAPI chama SetLockState para bloquear uma mensagem, ele bloqueia apenas a mensagem mais antiga (ou seja, a próxima mensagem enfileirada para o spooler MAPI enviar). Se a mensagem mais antiga da fila estiver aguardando por um provedor de transporte temporariamente indisponível e a próxima mensagem na fila usar um provedor de transporte diferente, o spooler MAPI poderá começar a processar a mensagem posterior. Ele começa o processamento bloqueando essa mensagem usando SetLockState.

Observações para implementadores

Depois que o spooler MAPI tiver chamado SetLockState com o parâmetro ulLockState definido como MSG_LOCKED, as chamadas para o método IMsgStore::AbortSubmit para cancelar a transmissão da mensagem devem falhar.

Chame o método IMAPIProp::SaveChanges da mensagem em sua implementação SetLockState para que todas as alterações feitas na mensagem antes do recebimento da chamada SetLockState sejam salvas.

Confira também

IMsgStore::AbortSubmit

IMsgStore::FinishedMsg

IMsgStore : IMAPIProp