Compartilhar via


IMAPIFormMgr::ResolveMessageClass

Aplica-se a: Outlook 2013 | Outlook 2016

Resolve uma classe de mensagem para seu formulário dentro de um contêiner de formulário e retorna um objeto de informações de formulário para esse formulário.

HRESULT ResolveMessageClass(
  LPCSTR szMsgClass,
  ULONG ulFlags,
  LPMAPIFOLDER pFolderFocus,
  LPMAPIFORMINFO FAR * ppResult
);

Parâmetros

szMsgClass

[in] Uma cadeia de caracteres que nomeia a classe de mensagem que está sendo resolvida.

ulFlags

[in] Um bitmask de sinalizadores que controla como a classe de mensagem é resolvida. O seguinte sinalizador pode ser definido:

MAPIFORM_EXACTMATCH

Somente cadeias de caracteres de classe de mensagem que são uma correspondência exata devem ser resolvidas.

pFolderFocus

[in] Um ponteiro para a pasta que contém a mensagem que está sendo resolvida. O parâmetro pFolderFocus pode ser NULL.

ppResult

[out] Um ponteiro para um ponteiro para um objeto de informações de formulário retornado.

Valor de retorno

S_OK

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

MAPI_E_NOT_FOUND

A classe de mensagem passada no parâmetro szMsgClass não corresponde à classe de mensagem para qualquer formulário na biblioteca de formulários.

Comentários

Os visualizadores de formulário chamam o método IMAPIFormMgr::ResolveMessageClass para resolve uma classe de mensagem ao seu formulário dentro de um contêiner de formulário. O objeto de informações de formulário retornado no parâmetro ppResult fornece acesso adicional às propriedades do formulário que tem a classe de mensagem fornecida.

Notas para chamadores

Para resolve uma classe de mensagem para um formulário, um visualizador de formulários passa o nome da classe de mensagem a ser resolvido, como " IPM.HelpDesk.Software". Para forçar a resolução a ser exata (ou seja, para impedir a resolução para uma classe base da classe de mensagem quando um servidor de formulário exatamente correspondente não estiver disponível), o sinalizador MAPIFORM_EXACTMATCH pode ser passado no parâmetro ulFlags . Se o parâmetro pFolderFocus for NULL, o processo de resolução da classe de mensagem não pesquisará um contêiner de pasta.

A ordem dos contêineres pesquisados depende da implementação do provedor de biblioteca de formulários. O provedor de biblioteca de formulários padrão pesquisa primeiro o contêiner local, depois o contêiner de pasta para a pasta passada, o contêiner de formulário pessoal e, por fim, o contêiner da organização.

Nomes de classe de mensagem são sempre cadeias de caracteres ANSI, nunca Unicode.

O identificador de classe da classe de mensagem resolvida é retornado como parte do objeto de informações do formulário. Um visualizador de formulários não deve trabalhar na suposição de que o identificador de classe existe na biblioteca OLE até que o visualizador de formulários tenha chamado o método IMAPIFormMgr::P repareForm ou o método IMAPIFormMgr::CreateForm .

Confira também

IMAPIFormInfo : IMAPIProp

IMAPIFormMgr::CreateForm

IMAPIFormMgr::PrepareForm

IMAPIFormMgr : IUnknown