Compartilhar via


Encontrar um nome de perfil

Aplica-se a: Outlook 2013 | Outlook 2016

Às vezes, os clientes precisam encontrar o nome do perfil que está sendo usado atualmente para a sessão, o nome do perfil padrão ou o nome de um perfil alternativo instalado no computador.

Há algumas maneiras de recuperar o nome de um perfil durante uma sessão. Se você precisar encontrar o nome de um perfil que não é necessariamente o que está sendo usado para a sessão, use o primeiro procedimento. Se você precisar encontrar o nome do perfil padrão, use o segundo procedimento. Se você precisar encontrar o nome do perfil atual para a sessão, use o último procedimento.

Para localizar o nome de qualquer perfil

  1. Chame MAPIAdminProfiles para recuperar um ponteiro de interface IProfAdmin .

  2. Chame IProfAdmin::GetProfileTable para acessar a tabela de perfil.

  3. Chame o método IMAPITable::QueryRows da tabela de perfil para recuperar todas as linhas da tabela e examinar cada uma delas para determinar se ela representa seu perfil de destino.

Para localizar o nome do perfil padrão

  1. Chame MAPIAdminProfiles.

  2. Chame IProfAdmin::GetProfileTable para acessar a tabela de perfil.

  3. Crie uma restrição de propriedade com uma estrutura SPropertyRestriction para corresponder PR_DEFAULT_PROFILE (PidTagDefaultProfile) com o valor TRUE.

  4. Chame IMAPITable::FindRow para localizar a linha na tabela de perfil que representa o perfil padrão. A coluna PR_DISPLAY_NAME (PidTagDisplayName) contém o nome do perfil padrão.

Para localizar o nome do perfil atual

Para localizar o nome do perfil atual, conclua uma das seguintes etapas:

  • Supondo que você tenha a estrutura MAPIUID representando uma das seções do perfil atual, passe-a no parâmetro lpUID para IMAPISession::OpenProfileSection. Recupere a propriedade PR_PROFILE_NAME (PidTagProfileName) da seção de perfil usando o método IMAPIProp::GetProps .

  • Chame IMAPISession::GetStatusTable para acessar a tabela status e localize a linha que tem sua coluna PR_RESOURCE_TYPE (PidTagResourceType) definida como MAPI_SUBSYSTEM. A coluna PR_DISPLAY_NAME para essa linha é o nome do perfil. Não use a tabela status durante a inicialização porque bloqueia um aplicativo até que o spooler MAPI termine de inicializar todos os provedores de transporte. Isso pode degradar seu desempenho.