Iniciar sessão com a Microsoft
Iniciar sessão ou criar uma conta.
Olá,
Selecione uma conta diferente.
Tem várias contas
Selecione a conta com a qual pretende iniciar sessão.

Resumo

Para garantir a utilização consistente de propriedades ou campos personalizados, o Microsoft Office Outlook 2003 Service Pack 2 (SP2) e versões posteriores do Outlook limitam algumas das formas como as propriedades personalizadas podem ser introduzidas nos arquivos de dados do Outlook. Por exemplo, as propriedades personalizadas podem ser introduzidas de formas específicas em ficheiros de pastas pessoais (.pst) do Outlook.

INTRODUÇÃO

Este artigo faz o seguinte:

  • Fornece uma descrição geral das propriedades personalizadas.

  • Explica como o comportamento das propriedades personalizadas foi alterado no Outlook 2003 SP2 e em versões posteriores do Outlook.

  • Aborda algumas das melhores práticas para criar novas propriedades e alguns métodos que não recomendamos.

Mais Informações

Acerca das propriedades personalizadas

As propriedades personalizadas são utilizadas por programas de e-mail, como o Outlook, para adicionar mais informações a uma mensagem. Normalmente, estas informações adicionais são utilizadas por um programa de e-mail para uma finalidade específica. No entanto, existem outras formas de utilizar as propriedades personalizadas. Por exemplo, as propriedades personalizadas podem ser adicionadas a mensagens ou itens se utilizar formulários personalizados do Outlook e esses formulários contiverem campos personalizados. As propriedades personalizadas são frequentemente utilizadas para adicionar mais informações para fins de controlo. As propriedades personalizadas também são utilizadas para adicionar dados que um utilizador não tem de ver. Uma solução personalizada também pode adicionar propriedades personalizadas a itens normais. Uma solução personalizada adiciona programaticamente propriedades personalizadas a uma mensagem ou item sem precisar de um formulário personalizado.

As propriedades personalizadas podem ser mantidas no formato de ficheiro .msg e no formato de ficheiro .oft no Outlook. Além disso, as propriedades personalizadas podem ser mantidas nas mensagens de e-mail que são enviadas pela Internet se o remetente utilizar a opção Enviar com o Formato RtF do Outlook . Esta opção encapsula a secção MAPI da mensagem em Transport Neutral Encapsulation Format (TNEF) e, em seguida, a TNEF é descodificada quando a mensagem é recebida.

Um remetente pode enviar um e-mail com propriedades personalizadas nos seguintes cenários:

  • É enviado um formulário personalizado único. Em formulários pontuais, o formulário é incorporado na mensagem. O formulário não é publicado noutro local. Para obter mais informações sobre formulários pontuais, consulte o seguinte artigo:

    Guardar um Formulário com o Item (Formulários Pontuais)

  • É enviado um formulário personalizado publicado. Neste caso, o formulário personalizado não é enviado porque o formulário não está incorporado na mensagem. No entanto, todas as propriedades personalizadas que foram utilizadas no formulário ainda estão incluídas na mensagem.

Nota Existem várias formas de fazer referência a propriedades personalizadas, consoante o contexto em que as propriedades personalizadas são utilizadas. Na interface de utilizador do Outlook, como no Separador de Campos, as propriedades personalizadas são referidas como campos definidos pelo utilizador ou como campos personalizados. Na biblioteca de objetos do Outlook, as propriedades personalizadas podem ser referidas como propriedades de utilizador ou como propriedades definidas pelo utilizador após a coleção UserProperties. No MAPI, os campos personalizados são referidos como propriedades nomeadas. A MAPI fornece uma instalação para fazer o seguinte:

  • Atribuir nomes a propriedades

  • Mapear os nomes para identificadores exclusivos

  • Tornar o mapeamento persistente

Para obter mais informações sobre como as propriedades nomeadas são implementadas na MAPI, visite o seguinte Web site da MSDN:

http://msdn2.microsoft.com/en-us/library/ms529055.aspx Nota Num ambiente do Exchange, o termo "loja" conforme utilizado neste artigo refere-se a um arquivo de caixa de correio inteiro (base de dados). O termo não se refere ao arquivo de caixa de correio de um utilizador individual. Pode haver uma ou mais bases de dados de caixas de correio do Exchange numa organização.

Alterações de comportamento no Outlook

A implementação do MAPI no Outlook foi alterada para controlar a forma como as propriedades personalizadas podem ser criadas. Para garantir a utilização consistente de propriedades personalizadas, as propriedades personalizadas já têm de ser utilizadas na organização ou no cliente do Outlook. Assim que as propriedades personalizadas estiverem a ser utilizadas ou registadas, as propriedades personalizadas podem ser transmitidas livremente para outros clientes do Outlook ou para servidores com Exchange Server. As propriedades personalizadas também podem ser enviadas através da Internet.

Normalmente, as mensagens de e-mail são enviadas no formato MIME através da Internet. Quando o Outlook recebe uma mensagem de e-mail da Internet, a mensagem é convertida numa representação MAPI. Seguem-se exemplos de protocolos de e-mail da Internet:

  • POP

  • IMAP

  • HTTP (Outlook.com)

Por predefinição, o Outlook já não permite que o correio da Internet crie novas propriedades personalizadas. Apenas as propriedades que já estão criadas no arquivo de entrega de correio predefinido são preservadas para mensagens de e-mail recebidas. Esta alteração afeta principalmente as mensagens enviadas no TNEF encapsulado (Winmail.dat), onde o remetente utilizou a opção Enviar com o Formato RTF do Outlook . No entanto, as mensagens da Internet que contêm propriedades de cabeçalho de mensagem X também são afetadas.

Nota As mensagens que contêm propriedades personalizadas enviadas numa organização do Exchange não são afetadas por estas alterações.

As propriedades personalizadas também podem ser guardadas em ficheiros .msg e em ficheiros .oft. Se um utilizador abrir um ficheiro .msg com propriedades personalizadas, essas propriedades personalizadas não são guardadas no arquivo predefinido quando a mensagem é guardada, reencaminhada, etc. Normalmente, os ficheiros .oft são utilizados para criar cópias de segurança de formulários personalizados do Outlook. Com os ficheiros .oft, o novo comportamento aplica-se a todos os tipos de itens. O formulário personalizado não será aberto. Em vez disso, a mensagem será apresentada no formulário predefinido para esse tipo de item específico.

Em resumo, esta alteração na estrutura pode fazer com que ocorram dois aspetos:

  • O Outlook ignora propriedades personalizadas não existentes. Se não existir uma propriedade personalizada no arquivo de entrega, a propriedade não será criada e o respetivo valor será perdido. Se a propriedade personalizada já existir no arquivo de entrega, o respetivo valor será mantido. Esta alteração aplica-se ao seguinte:

    • Mensagens de e-mail da Internet com TNEF e as respetivas mensagens incorporadas.

    • Mensagens S/MIME.

    • Ficheiros .msg quando larga o ficheiro .msg numa janela de item do Outlook para adicionar o ficheiro a outro item. Esta alteração também se aplica a ficheiros .msg quando larga o ficheiro .msg na janela principal do Outlook para adicionar o ficheiro a uma pasta ou na janela do Microsoft Word quando utiliza Word como editor de e-mail.

    • Ficheiros .msg que um utilizador faz duplo clique ou clique com o botão direito do rato para abrir.

  • O Outlook ignora a definição de formulário pontual. Se um formulário único especificar uma propriedade personalizada e essa propriedade personalizada não existir no arquivo de entrega, o formulário único não é composto. Em vez disso, o utilizador verá o formulário predefinido para esse tipo de item específico. Esta alteração aplica-se a mensagens de e-mail da Internet que contêm uma definição de formulário única encapsulada no TNEF. Esta alteração também se aplica a ficheiros .oft que um utilizador faça duplo clique ou clique com o botão direito do rato para abrir.

Melhores práticas e outras formas de criar novas propriedades

Existem várias formas de criar e desenvolver soluções personalizadas. Algumas destas abordagens são consideradas melhores práticas. Outras abordagens também podem funcionar, mas não recomendamos essas abordagens por um ou mais motivos.

Melhor prática: Adicionar campos personalizados programaticamente

Várias APIs podem ser utilizadas para adicionar programaticamente campos personalizados a itens. Para tal, utilize o método UserProperties.Add na biblioteca de objetos do Outlook ("Outlook.Application"). O código seguinte ilustra esta melhor prática.

Set myProp = myItem.UserProperties.Add("MyPropName", olText)

Também pode utilizar a biblioteca de objetos CDO ("MAPI. Sessão") para adicionar campos personalizados. Para obter mais informações, visite o seguinte Web site da MSDN:

http://msdn2.microsoft.com/en-us/library/ms527518.aspx Para programadores C++, a MAPI Expandida pode ser utilizada para adicionar propriedades nomeadas. Para obter mais informações, visite o seguinte Web site da MSDN:

http://msdn2.microsoft.com/en-us/library/ms529684.aspx

Melhor prática: utilizar formulários personalizados publicados que contenham campos personalizados

O Outlook confia em grande parte nos formulários personalizados publicados. No entanto, o Outlook não confia em formulários não publicados ou formulários pontuais. Isto inclui ficheiros .oft. Por conseguinte, quando cria uma solução de formulário personalizada, recomendamos vivamente que publique o formulário personalizado. Deve estruturar o formulário para que o formulário não se torne um formulário único. Desde que um formulário seja publicado, o formulário não será afetado pela alteração no Outlook.
 
Quando publica um ficheiro .oft num arquivo diferente, o arquivo predefinido permite-lhe criar propriedades nesse arquivo. Além disso, quando cria um formulário personalizado que tem propriedades personalizadas e o publica na biblioteca ou pasta de formulários adequada, as propriedades personalizadas são criadas nos arquivos afetados.

Melhor prática: implementar formulários personalizados através de programação

Se estiver a desenvolver um formulário personalizado do Outlook que será utilizado por outras pessoas, existem poucas abordagens que pode utilizar. A abordagem que utiliza depende de vários fatores. Estes fatores incluem o tipo de formulário, quem utilizará o formulário, onde o formulário será utilizado, etc. Normalmente, se um formulário personalizado for utilizado por muitas pessoas, recomendamos que publique o formulário na Biblioteca de Formulários Organizacionais. No entanto, se isso não for possível, poderá querer publicar o formulário numa pasta partilhada ou na Biblioteca de Formulários Pessoais de alguns utilizadores. Pode instalar programaticamente um formulário personalizado com o método CreateItemFromTemplate na biblioteca de objetos do Outlook. Utilize o método CreateItemFromTemplate para abrir um ficheiro .oft e, em seguida, publique o formulário com o método PublishForm. Neste caso, um ficheiro .oft não é afetado pelas alterações de propriedades personalizadas.

Não recomendado: Implementar ou enviar ficheiros .oft para os utilizadores abrirem

Pode guardar formulários personalizados do Outlook como ficheiros .oft. Estes formulários podem conter campos personalizados, alterações da interface de utilizador e código personalizado do Microsoft Visual Basic Scripting Edition (VBScript) para adicionar funcionalidade ao formulário. Embora o Outlook já contenha funcionalidades que impedem a execução do código VBScript em ficheiros .oft, o Outlook agora também restringe a utilização de ficheiros .oft. Se um ficheiro .oft contiver propriedades personalizadas e o utilizador não tiver utilizado anteriormente essas propriedades personalizadas, as propriedades personalizadas não estão no arquivo predefinido do utilizador. O Outlook não irá compor o formulário personalizado quando o utilizador fazer duplo clique no ficheiro. No entanto, para que o Outlook abra um formulário personalizado armazenado como um ficheiro .oft, clique em Ficheiro, clique em Novo e, em seguida, clique em Escolher Formulário. Em seguida, pode alterar a localização para Modelos de Utilizador no Sistema de Ficheiros e, em seguida, clicar em Procurar para abrir o ficheiro .oft. O formulário será aberto e pode guardar as propriedades personalizadas no arquivo predefinido.

Não recomendado: utilize a chave de registo AllowNamedProps

Algumas organizações podem ter motivos válidos para ter determinadas propriedades personalizadas disponíveis em toda a organização. Se forem utilizados vários arquivos, poderá querer certificar-se de que um conjunto de propriedades personalizadas pode ser adicionado a todas as lojas. Por conseguinte, o Outlook 2003 SP2 e versões posteriores suportam chaves de registo do lado do cliente que especificam as propriedades personalizadas que podem ser criadas. Para especificar que propriedades personalizadas devem ser ativadas, as propriedades personalizadas são definidas sob a seguinte chave de registo: HKEY_CURRENT_USER\Software\Microsoft\Office\<versão>\Outlook\AllowedNamedProps\

Nota Nesta chave de registo, <versão> é um marcador de posição para a versão do Outlook que está a utilizar. Para o Outlook 2003, o número da versão é 11.0. Para o Outlook 2007, o número da versão é 12.0. O número da versão aumentará em versões posteriores do Outlook.

A estrutura geral da chave do registo para uma entrada no registo é:

<> GUID

<Nome da Propriedade>

"Kind" (dword)

"ID" (dword)
"Type" (dword) Os seguintes marcadores de posição são utilizados na estrutura da chave do registo:

  • <guid>: contém o GUID que especifica o conjunto de propriedades. Os campos personalizados ou propriedades do Outlook que utiliza num formulário personalizado do Outlook têm o GUID {00020329-0000-0000-C000-0000000000046}. Em MAPI, o GUID é referido como PS_PULIC_STRINGS. No entanto, os programas MAPI personalizados podem ter os seus próprios GUIDs para propriedades personalizadas.

  • <Nome da Propriedade>: especifica o nome da propriedade. Se a propriedade for nomeada por uma cadeia, o nome da propriedade <> é o nome de cadeia real da propriedade. Se a propriedade for nomeada por um ID, o valor desta chave de registo é ignorado. No entanto, tem de atribuir um nome exclusivo à propriedade para que a propriedade possa ser armazenada no registo. Se a chave Kind estiver definida como 1 ou for <> 0, o nome da chave do registo determinará o nome da propriedade. Se a chave Kind não for igual a 1, este nome de chave de registo será ignorado.

  • "Kind" (dword): especifica se a propriedade é nomeada por um ID ou por uma cadeia. Se o valor for 0, a propriedade será nomeada por um ID. O nome é um valor numérico especificado por um ID. Se o valor for 1, a propriedade será nomeada por uma cadeia. Esta definição é a predefinição quando "Tipo" não está presente.

  • "ID" (dword): contém o nome do ID de uma propriedade com o nome de um ID. Estas informações são necessárias se a chave Kind estiver definida como 0. Se a chave Kind estiver definida como 1, estas informações são ignoradas.

  • "Type" (dword): especifica o tipo de propriedade.

Esta chave de registo é necessária, mas a chave de registo não é atualmente utilizada. A tabela seguinte lista os valores possíveis desta chave de registo com base no tipo MAPI.

Tipo de MAPI

Valor

Descrição

PT_UNSPECIFIED

0

Reservado para utilização da interface (o tipo não é importante para o autor da chamada)

PT_NULL

1

Valor da propriedade NULL

PT_I2

2

Valor assinado de 16 bits

PT_LONG

3

Valor assinado de 32 bits

PT_R4

4

Vírgula flutuante de 4 bytes

PT_DOUBLE

5

Vírgula flutuante dupla

PT_CURRENCY

6

Int de 64 bits assinado (decimal com 4 dígitos à direita decimal pt)

PT_APPTIME

7

Tempo da aplicação

PT_ERROR

10

Valor de erro de 32 bits

PT_BOOLEAN

11

Booleano de 16 bits (não zero verdadeiro)

PT_OBJECT

13

Objeto incorporado numa propriedade

PT_I8

20

Número inteiro assinado com 8 bytes

PT_STRING8

30

Cadeia de 8 bits terminada nulo

PT_UNICODE

31

Cadeia Unicode terminada nula

PT_SYSTIME

64

FILETIME número inteiro de 64 bits com w/número de períodos de 100ns desde 1 de janeiro de 1601

PT_CLSID

72

OLE GUID

PT_BINARY

258

Não preterido (matriz de bytes contados)

PT_MV_UNSPECIFIED

4096

PT_MV_NULL

4097

PT_MV_I2

4098

PT_MV_LONG

4099

PT_MV_R4

4100

PT_MV_DOUBLE

4101

PT_MV_CURRENCY

4102

PT_MV_APPTIME

4103

PT_MV_ERROR

4106

PT_MV_BOOLEAN

4107

PT_MV_OBJECT

4109

PT_MV_I8

4116

PT_MV_STRING8

4126

PT_MV_UNICODE

4127

PT_MV_SYSTIME

4160

PT_MV_CLSID

4168

PT_MV_BINARY

4354

Segue-se um exemplo de como definir uma propriedade com nome por cadeia:

Nome: "MyStringFieldName1"

Tipo: PT_LONG

[HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\AllowedNamedProps\{00020329-0000-0000-C000-000000000046}\MyStringFieldName1] "Type"=dword:00000003
Segue-se um exemplo de como definir uma propriedade com nome por ID:

ID: 0x0330

Tipo: PT_LONG

[HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\AllowedNamedProps\{00020329-0000-0000-C000-000000000046}\MyMAPIProp1] "Kind"=dword:000000000 "ID"=dword:00000330 "Type"=dword:00000003


Nestes dois exemplos, o registo é semelhante ao seguinte no Editor de Registo:


{00020329-0000-0000-C000-000000000046}
 

MyStringFieldName1

Tipo = 3
MyStringFieldName2

Tipo = 3
{00020329-0000-0000-C000-000000000046}

MyMAPIProp1

Tipo = 0
ID = 330

Tipo = 3
MyMAPIProp2

Tipo = 0
ID = 331
Tipo = 3

Não recomendado: reativar a capacidade de criar propriedades

Podem ser implementadas três chaves de registo em computadores cliente para desativar o bloqueio de propriedades personalizadas e reverter o Outlook para o comportamento anterior. Estas chaves de registo são suportadas por políticas de grupo. As seguintes chaves de registo podem reverter o Outlook 2003 para o comportamento anterior:

Nota As seguintes chaves de registo não revertem o Outlook 2007 para o comportamento anterior.

  • AllowTNEFtoCreateProps (HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Options\Mail] "AllowTNEFtoCreateProps"=dword:00000000): se o valor for 0, o TNEF/MIME não consegue criar novas propriedades personalizadas que não sejam do Outlook. Este valor é o valor predefinido. Se o valor for 1, a TNEF/MIME pode criar novas propriedades personalizadas que não sejam do Outlook.

  • AllowMSGFilestoCreateProps: se o valor for 0, os ficheiros .msg e os ficheiros .oft não podem criar novas propriedades personalizadas que não sejam do Outlook. Este valor é o valor predefinido. Se o valor for 1, os ficheiros .msg e os ficheiros .oft podem criar novas propriedades personalizadas que não sejam do Outlook.

  • DisallowTNEFPreservation: para facilitar a migração para este novo comportamento, o Outlook preserva a TNEF original quando as propriedades personalizadas não são criadas. A TNEF original é guardada num fluxo binário no item guardado. O Outlook utiliza a seguinte etiqueta de propriedade para guardar o fluxo:

    PR_TNEF_UNPROCESSED_PROPS PROG_TAG(PT_BINARY, 0x0e9C). O HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Options\Mail] "DisallowTNEFPreservation "=dword:000000000
    A definição de registo controla se o Outlook cria a propriedade PR_TNEF_UNPROCESSED_PROPS.

    Nota A propriedade PR_TNEF_UNPROCESSED_PROPS é removida de uma mensagem quando incorpora uma mensagem noutra mensagem como anexo. A propriedade PR_TNEF_UNPROCESSED_PROPS também é removida quando reencaminha uma mensagem ou responde a uma mensagem.

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.

Estas informações foram úteis?

Quão satisfeito está com a qualidade do idioma?
O que afetou a sua experiência?
Ao selecionar submeter, o seu feedback será utilizado para melhorar os produtos e serviços da Microsoft. O seu administrador de TI poderá recolher estes dados. Declaração de Privacidade.

Obrigado pelo seu feedback!

×