Usar um provedor do repositório PST encapsulado
Aplica-se a: Outlook 2013 | Outlook 2016
Antes de poder usar um provedor de armazenamento PST (arquivo de pastas pessoais) encapsulado, você deve inicializar e configurar o provedor de armazenamento PST encapsulado. Depois que o provedor de loja PST encapsulado for configurado, você deve implementar funções para que MAPI e o spooler MAPI possam fazer logon no provedor do repositório de mensagens. Para obter mais informações sobre como inicializar e fazer logon em um provedor de loja PST encapsulado, consulte Inicializando um provedor de loja PST encapsulado e fazendo logon em um provedor de loja PST encapsulado.
A interface IMAPISupport::IUnknown fornece implementações para tarefas normalmente executadas por provedores de repositório de mensagens. Essa interface deve ser encapsulada para que o Provedor de Repositório PST encapsulado de exemplo funcione. A função IMAPISupport::OpenProfileSection requer implementação especial. Todas as outras funções podem passar seus parâmetros para o objeto encapsulado subjacente.
Neste tópico, a função IMAPISupport::OpenProfileSection é demonstrada usando um exemplo de código do Provedor de Repositório PST Encapsulado de Exemplo. O exemplo implementa um provedor PST encapsulado que se destina a ser usado em conjunto com a API de Replicação. Para obter mais informações sobre como baixar e instalar o Provedor de Repositório PST Encapsulado de Exemplo, consulte Instalando o Provedor de Repositório PST Encapsulado de Exemplo. Para obter mais informações sobre a API de Replicação, consulte Sobre a API de Replicação.
Quando terminar de usar um provedor de loja PST encapsulado, você deve desligar corretamente o provedor de loja PST encapsulado. Para obter mais informações, consulte Desligar um provedor de repositório PST encapsulado.
Rotina da Seção Abrir Perfil
A função IMAPISupport::OpenProfileSection abre uma seção do perfil atual. A função requer tratamento especial na implementação do provedor de repositório PST encapsulado. Quando o pgNSTGlobalProfileSectionGuid
é solicitado, a função retorna a seção de perfil armazenada em cache.
Exemplo CSupport::OpenProfileSection()
STDMETHODIMP CSupport::OpenProfileSection(
LPMAPIUID lpUid,
ULONG ulFlags,
LPPROFSECT * lppProfileObj)
{
Log(true,"CSupport::OpenProfileSection\n");
if (lpUid &&
IsEqualMAPIUID(lpUid, (void *)&pbNSTGlobalProfileSectionGuid) &&
m_lpProfSect)
{
// Allow the opening of the Global Section
if (m_lpProfSect)
{
*lppProfileObj = m_lpProfSect;
(*lppProfileObj)->AddRef();
return S_OK;
}
}
return m_pMAPISup->OpenProfileSection(lpUid, ulFlags, lppProfileObj);
}