Compartilhar via


IMAPISession::SetDefaultStore

Aplica-se a: Outlook 2013 | Outlook 2016

Estabelece um repositório de mensagens como o repositório de mensagens padrão para a sessão.

HRESULT SetDefaultStore(
  ULONG ulFlags,
  ULONG cbEntryID,
  LPENTRYID lpEntryID
);

Parâmetros

ulFlags

[in] Um bitmask de sinalizadores que controla a configuração do repositório de mensagens padrão. Esses sinalizadores são mutuamente exclusivos; somente um dos seguintes sinalizadores pode ser definido:

MAPI_DEFAULT_STORE

Estabelece o repositório de mensagens como o padrão da sessão. Atualizações a linha de tabela status do repositório de mensagens definindo o sinalizador de STATUS_DEFAULT_STORE na coluna PR_RESOURCE_FLAGS (PidTagResourceFlags).

MAPI_PRIMARY_STORE

Estabelece o repositório de mensagens como o repositório a ser usado no logon. Se o repositório de mensagens não for o repositório padrão, os clientes deverão torná-lo o padrão. Atualizações a linha de tabela status do repositório de mensagens definindo o sinalizador de STATUS_PRIMARY_STORE na coluna PR_RESOURCE_FLAGS.

MAPI_SECONDARY_STORE

Estabelece o repositório de mensagens como o repositório a ser usado no logon se o repositório de mensagens primário não estiver disponível. Se um cliente não puder abrir o repositório primário, ele deverá abrir o repositório secundário e defini-lo como o padrão. Atualizações a linha de tabela status do repositório de mensagens definindo o sinalizador de STATUS_SECONDARY_STORE na coluna PR_RESOURCE_FLAGS.

MAPI_SIMPLE_STORE_PERMANENT

Define o sinalizador STATUS_SIMPLE_STORE na propriedade PR_RESOURCE_FLAGS do repositório de mensagens em sua linha de tabela status, na linha de tabela do repositório de mensagens e no perfil da sessão.

MAPI_SIMPLE_STORE_TEMPORARY

Define o sinalizador STATUS_SIMPLE_STORE na propriedade PR_RESOURCE_FLAGS do repositório de mensagens em sua linha de tabela status e na linha de tabela do repositório de mensagens. O perfil não é modificado.

cbEntryID

[in] A contagem de bytes no identificador de entrada apontada pelo parâmetro lpEntryID .

Lpentryid

[in] Um ponteiro para o identificador de entrada do repositório de mensagens que se destina como o padrão. Se um cliente passar NULL no lpEntryID, nenhum repositório de mensagens será selecionado como o padrão.

Valor de retorno

S_OK

A chamada foi bem-sucedida e retornou o valor ou valores esperados.

Comentários

O método IMAPISession::SetDefaultStore estabelece um repositório de mensagens como um dos seguintes:

  • O repositório de mensagens padrão para a sessão.

  • O repositório de mensagens primário para a sessão.

  • O repositório de mensagens secundário para a sessão.

Para estabelecer um repositório de mensagens como o padrão, o repositório de mensagens deve ter os seguintes sinalizadores definidos em sua propriedade PR_STORE_SUPPORT_MASK (PidTagStoreSupportMask):

  • STORE_SUBMIT_OK

  • STORE_CREATE_OK

  • STORE_MODIFY_OK

Notas para chamadores

Você pode determinar o repositório de mensagens padrão para a sessão recuperando a status tabela e procurando a configuração do sinalizador de STATUS_DEFAULT_STORE na coluna PR_RESOURCE_FLAGS. A linha que tem essa configuração representa o repositório de mensagens designado como o padrão da sessão.

Quando o MAPI_DEFAULT_STORE ou o sinalizador MAPI_SIMPLE_STORE_PERMANENT é definido, o MAPI atualiza o perfil, a tabela do repositório de mensagens e a tabela status.

Sempre que uma alteração é feita na configuração padrão do repositório de mensagens, as seguintes notificações são geradas:

  • Uma notificação de evento fnevTableModified é emitida para cada linha afetada no repositório de mensagens e na tabela status.

  • Uma notificação interna é emitida para o spooler MAPI. As operações já em andamento são concluídas sem alterações; novas operações que envolvem o repositório de mensagens padrão, como o download de mensagens, são processadas para o novo repositório padrão.

Referência do MFCMAPI

Para ver códigos de exemplo do MFCMAPI, confira a tabela a seguir.

Arquivo Função Comentário
MainDlg.cpp
CMainDlg::OnSetDefaultStore
O MFCMAPI usa o método IMAPISession::SetDefaultStore para definir o repositório selecionado como o repositório padrão.

Confira também

Propriedade Canônica PidTagResourceFlags

Propriedade Canônica PidTagStoreSupportMask

TABLE_NOTIFICATION

IMAPISession : IUnknown

MFCMAPI como exemplo de código