Função de retorno de chamada MAPISAVEMAIL (mapi.h)
[O uso dessa função é desencorajado. Ele pode estar alterado ou indisponível nas versões subsequentes do Windows.]
A função MAPISaveMail salva uma mensagem no repositório de mensagens.
Sintaxe
MAPISAVEMAIL Mapisavemail;
ULONG Mapisavemail(
[in] LHANDLE lhSession,
[in] ULONG_PTR ulUIParam,
[in] lpMapiMessage lpMessage,
[in] FLAGS flFlags,
ULONG ulReserved,
[in] LPSTR lpszMessageID
)
{...}
Parâmetros
[in] lhSession
Manipule para uma sessão MAPI simples ou zero. O valor do parâmetro lhSession não deve ser zero se o parâmetro lpszMessageID contiver um identificador de mensagem válido. No entanto, se lpszMessageID não contiver um identificador de mensagem válido e o valor de lhSession for zero, MAPI fará logon no usuário e criará uma sessão que existe apenas durante a chamada. Essa sessão temporária pode ser uma sessão compartilhada existente ou uma nova. Se necessário, a caixa de diálogo de logon será exibida.
[in] ulUIParam
Identificador de janela pai ou zero, indicando que, se uma caixa de diálogo for exibida, ela será modal do aplicativo. Se o parâmetro ulUIParam contiver um identificador de janela pai, ele será do tipo HWND (convertido em um ULONG_PTR). Se nenhuma caixa de diálogo for exibida durante a chamada, ulUIParam será ignorado.
[in] lpMessage
Parâmetro de entrada que aponta para uma estrutura MapiMessage que contém o conteúdo da mensagem a ser salva. O membro lpOriginator é ignorado. Os aplicativos podem ignorar o membro flFlags ou, se a mensagem nunca tiver sido salva, podem definir os sinalizadores MAPI_SENT e MAPI_UNREAD.
[in] flFlags
Máscara de bits de sinalizadores de opção. Os sinalizadores a seguir podem ser definidos.
ulReserved
Reservados; deve ser zero.
[in] lpszMessageID
Ponteiro para o identificador de mensagem a ser substituído pela operação de salvamento ou uma cadeia de caracteres vazia, indicando que uma nova mensagem deve ser criada. A cadeia de caracteres deve ser alocada pelo chamador e deve ser capaz de conter pelo menos 512 caracteres se o parâmetro flFlags estiver definido como MAPI_LONG_MSGID. Se o parâmetro flFlags não estiver definido como MAPI_LONG_MSGID, a cadeia de caracteres do identificador de mensagem poderá conter 64 caracteres.
Valor retornado
Essa função retorna um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
Não foi possível localizar um anexo no caminho especificado. A letra da unidade era inválida, o caminho não foi encontrado nessa unidade ou o arquivo não foi encontrado nesse caminho. |
|
O tipo de destinatário no lpMessage era inválido. |
|
Ocorreu um ou mais erros não especificados ao salvar a mensagem. Nenhuma mensagem foi salva. |
|
Não havia memória suficiente para salvar a mensagem. Nenhuma mensagem foi salva. |
|
Um identificador de mensagem inválido foi passado no parâmetro lpszMessageID ; nenhuma mensagem foi salva. |
|
Um ou mais destinatários da mensagem eram inválidos ou não podiam ser identificados. |
|
Um identificador de sessão inválido foi passado no parâmetro lhSession . Nenhuma mensagem foi salva. |
|
Não havia nenhum logon padrão e o usuário não conseguiu fazer logon com êxito quando a caixa de diálogo de logon foi exibida. Nenhuma mensagem foi salva. |
|
A operação não era compatível com o sistema de mensagens subjacente. |
|
O usuário cancelou uma das caixas de diálogo. Nenhuma mensagem foi salva. |
|
A chamada foi bem-sucedida e a mensagem foi salva. |
Comentários
A função MAPISaveMail salva uma mensagem, substituindo opcionalmente uma mensagem existente. Antes de chamar MAPISaveMail, use a função MAPIFindNext para verificar se a mensagem a ser salva é aquela que você deseja salvar. Os elementos da mensagem identificada pelo parâmetro lpszMessageID são substituídos pelos elementos no parâmetro lpMessage . Se lpszMessageID estiver vazio, uma nova mensagem será criada. Todas as mensagens substituídas são salvas em suas pastas apropriadas. Novas mensagens são salvas na pasta apropriada para mensagens de entrada dessa classe.
Nem todos os sistemas de mensagens dão suporte ao armazenamento de mensagens. Se o sistema de mensagens subjacente não oferecer suporte ao armazenamento de mensagens, MAPISaveMail retornará o valor MAPI_E_NOT_SUPPORTED.
Como os identificadores de mensagem são específicos do sistema e opacos e podem ser invalidados a qualquer momento, MAPISaveMail considera um identificador de mensagem válido apenas para a sessão mapi simples atual. MAPISaveMail manipula identificadores de mensagem inválidos retornando o valor MAPI_E_INVALID_MESSAGE.
Requisitos
Plataforma de Destino | Windows |
Cabeçalho | mapi.h |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de