ITnef::AddProps
Aplica-se a: Outlook 2013 | Outlook 2016
Permite que o provedor de serviços de chamada ou gateway adicione propriedades ao encapsulamento de uma mensagem ou de um anexo.
HRESULT AddProps(
ULONG ulFlags,
ULONG ulElemID,
LPVOID lpvData,
LPSPropTagArray lpPropList
);
Parâmetros
ulFlags
[in] Um bitmask de sinalizadores que controla como as propriedades são incluídas ou excluídas do encapsulamento. Os seguintes sinalizadores podem ser definidos:
TNEF_PROP_ATTACHMENTS_ONLY
Codifica apenas as propriedades no parâmetro lpPropList que fazem parte de anexos na mensagem.
TNEF_PROP_CONTAINED
Codifica apenas propriedades do anexo especificado pelo parâmetro ulElemID . Se o parâmetro lpvData não for NULL, os dados apontados serão gravados no encapsulamento do anexo no arquivo indicado pela propriedade PR_ATTACH_TRANSPORT_NAME (PidTagAttachTransportName).
TNEF_PROP_CONTAINED_TNEF
Codifica apenas propriedades da mensagem ou anexo especificados pelo parâmetro ulElemID . Se esse sinalizador for definido, o valor em lpvData deve ser um ponteiro IStream .
TNEF_PROP_EXCLUDE
Codifica todas as propriedades não especificadas no parâmetro lpPropList .
TNEF_PROP_INCLUDE
Codifica todas as propriedades especificadas no lpPropList.
TNEF_PROP_MESSAGE_ONLY
Codifica apenas as propriedades especificadas no lpPropList que fazem parte da própria mensagem.
ulElemID
[in] A propriedade PR_ATTACH_NUM de um anexo (PidTagAttachNumber), que contém um número que identifica exclusivamente o anexo em sua mensagem pai. O parâmetro ulElemID é usado quando o tratamento especial é solicitado para um anexo. O parâmetro ulElemID deve ser 0, a menos que o sinalizador TNEF_PROP_CONTAINED ou TNEF_PROP_CONTAINED_TNEF seja definido no parâmetro ulFlags .
lpvData
[in] Um ponteiro para os dados de anexo usados para substituir os dados do anexo especificado em ulElemID. O parâmetro lpvData deve ser NULL, a menos que TNEF_PROP_CONTAINED ou TNEF_PROP_CONTAINED_TNEF seja definido em ulFlags.
lpPropList
[in] Um ponteiro para a lista de propriedades a serem incluídas ou excluídas do encapsulamento.
Valor de retorno
S_OK
A chamada foi bem-sucedida e retornou o valor ou valores esperados.
Comentários
Provedores de transporte, provedores de armazenamento de mensagens e gateways chamam o método ITnef::AddProps para listar propriedades a serem incluídas ou excluídas do processamento do TNEF (Formato de Encapsulamento Transport-Neutral) de uma mensagem ou de um anexo. Usando chamadas sucessivas, o provedor ou gateway pode especificar uma lista de propriedades para adicionar e codificar ou excluir de serem codificadas. Provedores e gateways também podem usar AddProps para fornecer informações sobre quaisquer anexos de tratamento especiais.
O AddProps só tem suporte para objetos TNEF abertos com o sinalizador TNEF_ENCODE para a função OpenTnefStream ou OpenTnefStreamEx .
Observe que nenhuma codificação TNEF real acontece para AddProps até que o método ITnef::Finish seja chamado. Essa funcionalidade significa que os ponteiros passados para AddProps devem permanecer válidos até que a chamada para Concluir seja feita. Nesse ponto, todos os objetos e dados passados com chamadas AddProps podem ser liberados ou liberados .
Referência do MFCMAPI
Para ver códigos de exemplo do MFCMAPI, confira a tabela a seguir.
Arquivo | Função | Comentário |
---|---|---|
File.cpp |
SaveToTNEF |
O MFCMAPI usa o método ITnef::AddProps para copiar propriedades de uma mensagem para um fluxo TNEF. |