IMessage::GetAttachmentTable
Aplica-se a: Outlook 2013 | Outlook 2016
Retorna a tabela de anexo da mensagem.
HRESULT GetAttachmentTable(
ULONG ulFlags,
LPMAPITABLE FAR * lppTable
);
Parâmetros
ulFlags
[in] Bitmask de sinalizadores relacionados à criação da tabela. O seguinte sinalizador pode ser definido:
MAPI_UNICODE
As colunas de cadeia de caracteres estão no formato Unicode. Se o sinalizador MAPI_UNICODE não estiver definido, as colunas de cadeia de caracteres estarão no formato ANSI.
MAPI_DEFERRED_ERRORS
Permite que GetAttachmentTable retorne com êxito , possivelmente antes que a tabela esteja totalmente disponível para o cliente de chamada. Se a tabela não estiver disponível, fazer uma chamada subsequente a ela poderá causar um erro.
lppTable
[out] Ponteiro para um ponteiro para a tabela de anexo.
Valor de retorno
S_OK
A tabela de anexo foi recuperada com êxito.
Comentários
O método IMessage::GetAttachmentTable retorna um ponteiro para a tabela de anexo da mensagem, que inclui informações sobre todos os anexos na mensagem. Os clientes só podem ter acesso a um anexo por meio da tabela de anexos. Ao recuperar o número de um anexo, sua propriedade PR_ATTACH_NUM (PidTagAttachNumber) um cliente pode usar vários dos métodos IMessage para trabalhar com o anexo.
Há uma linha para cada anexo. Para obter uma lista completa das colunas em uma tabela de anexo, consulte Tabelas de anexo.
Geralmente, um anexo não aparece na tabela de anexos até que o anexo e a mensagem tenham sido salvos com uma chamada para IMAPIProp::SaveChanges. As tabelas de anexo são dinâmicas. Se um cliente criar um novo anexo, excluir um anexo existente ou alterar uma ou mais propriedades depois que as chamadas SaveChanges forem feitas no anexo da mensagem, a tabela de anexo será atualizada para refletir as novas informações.
Algumas tabelas de anexo dão suporte a uma ampla variedade de restrições; outros não. O suporte para restrições depende da implementação do provedor do repositório de mensagens.
Quando aberta inicialmente, as tabelas de anexo não são necessariamente classificadas em nenhuma ordem específica.
Definir o sinalizador MAPI_UNICODE no parâmetro ulFlags afeta as seguintes chamadas para a tabela de anexo:
IMAPITable::QueryColumns para recuperar o conjunto de colunas.
IMAPITable::QueryRows para recuperar linhas.
IMAPITable::QuerySortOrder para recuperar a ordem de classificação.
Definir o sinalizador Unicode solicita que as informações de todas as colunas de cadeia de caracteres retornadas dessas chamadas estejam no formato Unicode. No entanto, como nem todos os provedores do repositório de mensagens dão suporte ao Unicode, definir esse sinalizador é apenas uma solicitação.