Compartilhar via


Referenciando propriedades por Namespace

Este tópico lista os namespaces compatíveis com PropertyAccessor, Table e View e seus objetos filhos e discute referenciar propriedades nomeadas.

Namespaces usados por objetos do Outlook

A seguinte tabela resume os namespaces e os objetos do Outlook com suporte dado pelos namespaces. Observe que a propriedade indicada pelos namespaces diferencia maiúsculas de minúsculas.

Namespaces Objetos do Outlook com Suporte
https://schemas.microsoft.com/mapi/proptag Objetos de item do Outlook, AddressEntry, AddressList, Attachment, ExchangeDistributionList, ExchangeUser, Folder, Destinatário e objetos Store .
https://schemas.microsoft.com/mapi/id (Igual ao de acima)
https://schemas.microsoft.com/mapi/string (Igual ao de acima)
https://schemas.microsoft.com/exchange (Igual ao de acima)
urn:schemas-microsoft-com:office:office Objetos de item do Outlook
urn:schemas-microsoft-com:office:outlook Objetos de item do Outlook
DAV: Objetos de item do Outlook
urn:schemas:calendar Objetos de item do Outlook
urn:schemas:contacts Objetos de item do Outlook
urn:schemas:httpmail Objetos de item do Outlook
urn:schemas:mailheader Objetos de item do Outlook

Namespaces MAPI (Interface de Programação de Aplicativo de Mensagens)

Muitas propriedades com suporte no Outlook são propriedades MAPI. O objeto PropertyAccessor dá suporte a três subnamespaces do namespace MAPI: proptag, id e string. Cada uma das seções a seguir contém uma descrição para o subnamespace, uma descrição do formato para fazer referência a uma propriedade nesse subnamespace e uma definição da sintaxe expressa no Formulário de Backus-Naur Aumentada (ABNF), especificada em [RFC4234].

namespace proptag

Esse namespace é usado para acessar propriedades no namespace MAPI usando a marca de propriedade de uma propriedade. Ele somente dá suporte a propriedades no intervalo de propriedade MAPI (ou seja, propriedades com um identificador de propriedade abaixo de 0x8000). O seguinte formato é usado para indicar uma propriedade no namespace:

https://schemas.microsoft.com/mapi/proptag/0xHHHHHHHH

HHHHHHHHH representa um valor de marca de propriedade hexadecimal, com um identificador de propriedade exclusivo na ordem superior de 16 bits e um tipo de propriedade na ordem inferior de 16 bits. Todas as propriedades MAPI devem ter um rótulo de propriedade, independentemente da propriedade ser definida por MAPI, Outlook ou um provedor de serviços. O valor hexadecimal deve seguir o prefixo "0x".

Formalmente, as referências de propriedades neste namespace podem ser definidas no ABNF da seguinte maneira:

  proptag-specifier = "https://schemas.microsoft.com/mapi/proptag/x" property-id property-type 
  property-id = 4HEXDIG 
  property-type = 4HEXDIG

Por exemplo, o seguinte representa a propriedade MAPI PidTagSubject que o Outlook expõe em seu modelo de objeto como Assunto:

https://schemas.microsoft.com/mapi/proptag/0x0037001E

Namespace de id

Esse namespace é usado para acessar propriedades em um namespace identificado pelo GUID (identificador globalmente exclusivo) do namespace, usando o identificador da propriedade. O seguinte formato é usado para indicar uma propriedade no namespace:

https://schemas.microsoft.com/mapi/id/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/HHHHHHHH

{HHHHHHHHH-HHH-HHHH-HHHH-HHHHHHHHHHHHHHHHHH} representa o GUID do namespace e HHHHHHHHH representa a marca de propriedade.

Formalmente, as referências de propriedades neste namespace podem ser definidas no ABNF da seguinte maneira:

  id-specifier = "https://schemas.microsoft.com/mapi/id/" property-set "/x" property-long-id 
property-set = "{" 8HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 4HEXDIG "-" 12HEXDIG "}" 
property-long-id = 8HEXDIG

Por exemplo, o seguinte representa a propriedade NoAging do Outlook:

https://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/850E000B

namespace de cadeia de caracteres

Esse namespace é usado para acessar propriedades nomeadas por cadeia de caracteres em um namespace identificado. O seguinte formato é usado para indicar uma propriedade no namespace:

https://schemas.microsoft.com/mapi/string/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/ name

{HHHHHHHHH-HHHH-HHH-HHHH-HHHHHHHHHHHHHHHHHH} representa o GUID do namespace e o nome é o nome da propriedade local definido como uma cadeia de caracteres.

Formalmente, as referências de propriedades neste namespace podem ser definidas no ABNF da seguinte maneira:

  string-specifier = "https://schemas.microsoft.com/mapi/string/" property-set "/" property-name 
property-set = "{" 8*HEXDIG "-" 4*HEXDIG "-" 4*HEXDIG "-" 4*HEXDIG "-" 12*HEXDIG "}" 
property-name = 1*CHAR

Veja a seguir um exemplo que usa este namespace:

https://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/content-class

As regras de fuga se aplicam à referência a propriedades nomeadas no namespace de cadeia de caracteres. Ao fazer referência a uma propriedade nomeada que tenha um identificador de cadeia de caracteres (por exemplo, Autor, Empresa e Título), se o nome da propriedade contiver um espaço, uma cotação única, uma cotação dupla ou um caractere percentual, você deverá usar a URL (Universal Resource Locator) fugindo e representar esses caracteres com a cadeia de caracteres de escape correspondente, conforme mostrado na tabela a seguir.

Caractere na referência de propriedade Cadeia de Caracteres de Escape
Caractere de espaço %20
Aspas duplas %22
Aspas simples %27
Percentual de caractere %25

Veja a seguir um exemplo de como você especifica e obtém o valor de uma propriedade nomeada, "Gift" da mamãe, definida no namespace de cadeia de caracteres MAPI, usando o método PropertyAccessor.GetProperty :

  PropertyAccessor.GetProperty("https://schemas.microsoft.com/mapi/string/{00020329-0000-0000-C000-000000000046}/Mom%27s%20%22Gift%22")

Namespace do Exchange

O namespace do Exchange é usado para acessar propriedades do Exchange nomeadas pela cadeia de caracteres. O seguinte formato é usado para indicar uma propriedade no namespace:

https://schemas.microsoft.com/exchange/ name

nome é o nome da propriedade local definido como uma cadeia de caracteres.

O exemplo seguinte é uma propriedade indicada por esse namespace:

https://schemas.microsoft.com/exchange/readreceiptrequested

Namespaces do Office

O objeto PropertyAccessor dá suporte a dois subnamespaces do Office:

Namespace do Office

Esse namespace é usado para acessar propriedades do objeto DocumentItem . O seguinte formato é usado para indicar uma propriedade no namespace:

nome urn:schemas-microsoft-com:office: office#

nome é o nome da propriedade local definido como uma cadeia de caracteres.

Veja a seguir alguns exemplos de referenciar propriedades DocumentItem usando o namespace do Office:

  • urn:schemas-microsoft-com:office:office#Subject

  • urn:schemas-microsoft-com:office:office#Template

Namespace do Outlook

Esse namespace é usado para acessar propriedades no nível do item do Outlook. Semelhante aos outros namespaces que dão suporte à referência de propriedade, use esse namespace para acessar propriedades do Outlook que não são explicitamente expostas no modelo de objeto. O seguinte formato é usado para indicar uma propriedade no namespace:

nome urn:schemas-microsoft-com:office:outlook#

nome é o nome da propriedade local definido como uma cadeia de caracteres.

Veja a seguir um exemplo de referenciar uma propriedade no nível do item do Outlook usando o namespace do Outlook:

urn:schemas-microsoft-com:office:outlook#remotemessagesize

Namespaces da DAV (criação e versão distribuída)

Esses namespaces DAV são usados para acessar propriedades do nível de item do Outlook. O escopo de uma propriedade em um namespace DAV é definido com uma referência de namespace URI (Uniform Resource Identifier). O formato é uma concatenação do prefixo de URI do namespace e do nome da propriedade local expresso em uma cadeia de caracteres, com o URI de namespace sendo URN (Uniform Resource Name) ou URL (Uniform Resource Locator).

Os seguintes exemplos são namespaces DAV aos quais o objeto PropertyAccessor dá suporte:

  • DAV:

  • urn:schemas:calendar

  • urn:schemas:contacts

  • urn:schemas:httpmail

  • urn:schemas:mailheader

Estes são alguns exemplos de propriedades sendo indicadas por namespaces DAV diferentes:

  • DAV:checkintime

  • urn:schemas:httpmail:subject

  • urn:schemas:mailheader:subject

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.