Compartilhar via


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.

Confira também

ITnef::Finish

OpenTnefStream

OpenTnefStreamEx

Propriedade Canônica PidTagAttachTransportName

ITnef : IUnknown

MFCMAPI como exemplo de código