Compartilhar via


IMAPIFormMgr::LoadForm

Aplica-se a: Outlook 2013 | Outlook 2016

Inicia um formulário para abrir uma mensagem existente.

HRESULT LoadForm(
  ULONG_PTR ulUIParam,
  ULONG ulFlags,
  LPCSTR lpszMessageClass,
  ULONG ulMessageStatus,
  ULONG ulMessageFlags,
  LPMAPIFOLDER pFolderFocus,
  LPMAPIMESSAGESITE pMessageSite,
  LPMESSAGE pmsg,
  LPMAPIVIEWCONTEXT pViewContext,
  REFIID riid,
  LPVOID FAR * ppvObj
);

Parâmetros

ulUIParam

[in] Um identificador para a janela pai do indicador de progresso exibido enquanto o formulário é aberto. O parâmetro ulUIParam é ignorado, a menos que o sinalizador MAPI_DIALOG seja definido no parâmetro ulFlags .

ulFlags

[in] Um bitmask de sinalizadores que controla como o formulário é aberto. Os seguintes sinalizadores podem ser definidos:

MAPI_DIALOG

Exibe uma interface do usuário para fornecer status ou solicitar ao usuário mais informações. Se esse sinalizador não estiver definido, nenhuma interface do usuário será exibida.

MAPIFORM_EXACTMATCH

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

lpszMessageClass

[in] Um ponteiro para uma cadeia de caracteres que nomeia a classe de mensagem da mensagem a ser carregada. Se NULL for passado no parâmetro lpszMessageClass , a classe de mensagem será determinada a partir da mensagem apontada pelo parâmetro pmsg .

ulMessageStatus

[in] Um bitmask de sinalizadores definidos pelo cliente ou definidos pelo provedor copiados da propriedade PR_MSG_STATUS (PidTagMessageStatus) da mensagem que fornece informações sobre o estado da mensagem. O parâmetro ulMessageStatus deve ser definido se lpszMessageClass não for NULL; caso contrário, ulMessageStatus é ignorado.

ulMessageFlags

[in] Um ponteiro para um bitmask de sinalizadores copiados da propriedade PR_MESSAGE_FLAGS (PidTagMessageFlags) da mensagem que indica o estado atual da mensagem. O parâmetro ulMessageFlags deve ser definido se lpszMessageClass não for NULL; caso contrário, ulMessageFlags é ignorado.

pFolderFocus

[in] Um ponteiro para a pasta que contém diretamente a mensagem. O parâmetro pFolderFocus pode ser NULL se essa pasta não existir (por exemplo, se a mensagem estiver inserida em outra mensagem).

pMessageSite

[in] Um ponteiro para o site de mensagens da mensagem.

pmsg

[in] Um ponteiro para a mensagem.

pViewContext

[in] Um ponteiro para o contexto de exibição da mensagem. O parâmetro pViewContext pode ser NULL.

Riid

[in] O identificador de interface (IID) da interface a ser usada para o objeto de formulário retornado. O parâmetro riid não deve ser NULL.

Ppvobj

[out] Um ponteiro para um ponteiro para a interface retornada.

Valor de retorno

S_OK

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

MAPI_E_NO_INTERFACE

O formulário não dá suporte à interface solicitada.

MAPI_E_NOT_FOUND

A classe de mensagem passada em lpszMessageClass 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::LoadForm para abrir um formulário para uma mensagem existente. LoadForm abre o objeto de formulário, carrega a mensagem no objeto de formulário, configura o contexto de exibição apropriado, se necessário, e retorna a interface solicitada para o objeto de formulário.

O parâmetro pFolderFocus aponta para a pasta que contém a mensagem. Se a mensagem estiver inserida em outra mensagem, pFolderFocus deverá ser NULL.

Observações para implementadores

Se NULL for passado em lpszMessageClass, a implementação obterá a classe de mensagem, status e sinalizadores da PR_MESSAGE_CLASS da mensagem (PidTagMessageClass), PR_MSG_STATUS e PR_MESSAGE_FLAGS propriedades. Se uma cadeia de caracteres de classe de mensagem for fornecida em lpszMessageClass, a implementação deverá usar os valores em ulMessageStatus e ulMessageFlags.

Referência do MFCMAPI

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

Arquivo Função Comentário
MAPIFormFunctions.cpp
OpenMessageNonModal
O MFCMAPI usa o método IMAPIFormMgr::LoadForm para carregar um formulário antes de exibi-lo.

Confira também

Propriedade Canônica PidTagMessageClass
Propriedade Canônica PidTagMessageFlags
Propriedade Canônica PidTagMessageStatus
IMAPIFormMgr : IUnknownMFCMAPI como um exemplo de código