Propriedade Canônica PidTagMessageFlags
Aplica-se a: Outlook 2013 | Outlook 2016
Contém uma máscara de bits de sinalizadores que indicam a origem e o estado atual de uma mensagem.
Propriedade | Valor |
---|---|
Propriedades associadas: |
PR_MESSAGE_FLAGS |
Identificador: |
0x0E07 |
Tipo de dados: |
PT_LONG |
Área: |
Envio de mensagens gerais |
Comentários
Essa propriedade é uma propriedade de mensagem nãotransmittável exposta nas extremidades de envio e recebimento de uma transmissão, com valores diferentes dependendo do aplicativo cliente ou do provedor de armazenamento envolvido. Essa propriedade é inicializada pelo provedor do cliente ou do repositório de mensagens quando uma mensagem é criada e salva pela primeira vez e atualizada periodicamente pelo provedor do repositório de mensagens, um provedor de transporte e o spooler MAPI à medida que a mensagem é processada e seu estado muda.
Essa propriedade existe em uma mensagem antes e depois do envio e em todas as cópias da mensagem recebida. Embora não seja uma propriedade de destinatário, ela é exposta de forma diferente a cada destinatário de acordo com se ela foi lida ou modificada por esse destinatário.
Um ou mais dos seguintes sinalizadores podem ser definidos para esta propriedade:
MSGFLAG_ASSOCIATED
A mensagem é uma mensagem associada de uma pasta. O cliente ou provedor tem acesso somente leitura a esse sinalizador. O sinalizador MSGFLAG_READ é ignorado para mensagens associadas, que não retêm um estado de leitura/não leitura.
MSGFLAG_FROMME
O usuário de mensagens que enviava era o usuário de mensagens que recebia a mensagem. O cliente ou provedor tem acesso de leitura/gravação a esse sinalizador até a primeira chamada IMAPIProp::SaveChanges e somente leitura depois disso. Esse sinalizador deve ser definido pelo provedor de transporte.
MSGFLAG_HASATTACH
A mensagem tem pelo menos um anexo. Esse sinalizador corresponde à propriedade PR_HASATTACH (PidTagHasAttachments) da mensagem. O cliente tem acesso somente leitura a esse sinalizador.
MSGFLAG_NRN_PENDING
Um relatório não lido precisa ser enviado para a mensagem. O cliente ou provedor tem acesso somente leitura a esse sinalizador.
MSGFLAG_ORIGIN_INTERNET
A mensagem de entrada chegou pela Internet. Ele se originou fora da organização ou de uma origem que o gateway não pode considerar confiável. O cliente deve exibir uma mensagem apropriada para o usuário. Os provedores de transporte definem esse sinalizador; o cliente tem acesso somente leitura.
MSGFLAG_ORIGIN_MISC_EXT
A mensagem de entrada chegou por meio de um link externo diferente do X.400 ou da Internet. Ele se originou fora da organização ou de uma origem que o gateway não pode considerar confiável. O cliente deve exibir uma mensagem apropriada para o usuário. Os provedores de transporte definem esse sinalizador; o cliente tem acesso somente leitura.
MSGFLAG_ORIGIN_X400
A mensagem de entrada chegou por meio de um link X.400. Ele se originou fora da organização ou de uma origem que o gateway não pode considerar confiável. O cliente deve exibir uma mensagem apropriada para o usuário. Os provedores de transporte definem esse sinalizador; o cliente tem acesso somente leitura.
MSGFLAG_ORIGIN_EXT_SEND
A mensagem se originou fora da organização. O cliente deve exibir uma mensagem apropriada para o usuário. Os provedores de transporte definem esse sinalizador; o cliente tem acesso somente leitura.
MSGFLAG_READ
A mensagem está marcada como tendo sido lida. Isso pode ocorrer como resultado de uma chamada a qualquer momento para IMessage::SetReadFlag ou IMAPIFolder::SetReadFlags. Os clientes também podem definir esse sinalizador chamando o método IMAPIProp::SetProps de uma mensagem antes que a mensagem seja salva pela primeira vez. Esse sinalizador será ignorado se o sinalizador MSGFLAG_ASSOCIATED estiver definido.
MSGFLAG_RESEND
A mensagem inclui uma solicitação para uma operação de reenviamento com um relatório não detalhado. O cliente ou provedor tem acesso de leitura/gravação a esse sinalizador até a primeira chamada IMAPIProp::SaveChanges e somente leitura depois disso.
MSGFLAG_RN_PENDING
Um relatório de leitura precisa ser enviado para a mensagem. O cliente ou provedor tem acesso somente leitura a esse sinalizador.
MSGFLAG_SUBMIT
A mensagem é marcada para envio como resultado de uma chamada para IMessage::SubmitMessage. Os provedores do repositório de mensagens definem esse sinalizador; o cliente tem acesso somente leitura.
MSGFLAG_UNMODIFIED
A mensagem de saída não foi modificada desde a primeira vez que foi salva; A mensagem de entrada não foi modificada desde que foi entregue.
MSGFLAG_UNSENT
A mensagem ainda está sendo composta. Ele foi salvo, mas não foi enviado. O cliente ou provedor tem acesso de leitura/gravação a esse sinalizador até a primeira chamada IMAPIProp::SaveChanges e somente leitura depois disso. Se um cliente não definir esse sinalizador quando a mensagem for enviada, o provedor do repositório de mensagens o definirá quando IMessage::SubmitMessage for chamado. Normalmente, esse sinalizador é limpo depois que a mensagem é enviada.
Um provedor de armazenamento de mensagens ou cliente pode marcar o estado atual da mensagem a qualquer momento chamando o método IMAPIProp::GetProps para ler os valores de sinalizador. O cliente ou provedor também pode chamar o método IMAPIProp::SetProps para alterar todos os sinalizadores que atualmente têm acesso de leitura/gravação.
Vários dos sinalizadores são sempre somente leitura. Alguns são lidos/gravados até a primeira chamada para o método IMAPIProp::SaveChanges e, posteriormente, tornam-se somente leitura no que diz respeito a IMAPIProp::SetProps . Uma delas, MSGFLAG_READ, pode ser alterada posteriormente por meio de IMessage::SetReadFlag ou IMAPIFolder::SetReadFlags.
Os valores iniciais dessa propriedade normalmente são MSGFLAG_UNSENT e MSGFLAG_UNMODIFIED para indicar uma mensagem que ainda não foi enviada ou alterada. Quando uma mensagem é salva pela segunda vez, o provedor do repositório de mensagens limpa o sinalizador MSGFLAG_UNMODIFIED. Outro valor que um provedor de armazenamento de mensagens pode definir quando uma mensagem é salva é o sinalizador MSGFLAG_HASATTACH, indicando que a mensagem tem um ou mais anexos. A propriedade PR_HASATTACH é calculada a partir dessa configuração.
Quando um cliente chama o método IMessage::SubmitMessage para enviar a mensagem, o provedor do repositório de mensagens faz uma cópia dele para o spooler MAPI e atualiza essa propriedade definindo o sinalizador MSGFLAG_SUBMIT. O provedor do repositório de mensagens também define MSGFLAG_UNSENT se ainda não estiver definido. MSGFLAG_SUBMIT indica que o SubmitMessage foi chamado, iniciando o processo de envio e que a mensagem agora é somente leitura para o cliente. MSGFLAG_UNSENT indica que o spooler MAPI está lidando com a mensagem. Se o processo de envio for cancelado, o provedor do repositório de mensagens redefinirá esse sinalizador.
Quando a mensagem é dada a um provedor de transporte para entrega, o provedor de transporte define o sinalizador MSGFLAG_FROMME se o remetente tiver a mesma conta no servidor de mensagens em que a mensagem foi recebida. Os provedores de transporte definem MSGFLAG_FROMME para uma mensagem de entrada enviada pelo usuário conectado no momento. Um cliente pode usar esse valor para determinar que é mais apropriado mostrar nomes de destinatário na tabela de conteúdo da pasta Itens Enviados do que nomes de remetente. As mensagens salvas durante o processo de composição e ainda não enviadas também devem ser exibidas com nomes de destinatário em vez de nomes de remetente.
Para uma mensagem de entrada, um provedor de armazenamento de mensagens limpa o sinalizador MSGFLAG_READ para redefinir sua status de leitura. Um cliente pode definir ou desmarcar o sinalizador MSGFLAG_READ quando for necessário alterar o status de leitura e controlar o envio de relatórios lidos e não lidos, chamando o método IMessage::SetReadFlag da mensagem ou o método IMAPIFolder::SetReadFlags da pasta. A main diferença entre esses métodos, além do objeto que os implementa, é que o método de pasta pode afetar uma, várias ou todas as mensagens na pasta. O método de mensagem afeta uma única mensagem.
Um cliente também deve testar uma mensagem de entrada para os sinalizadores MSGFLAG_ORIGIN_X400, MSGFLAG_ORIGIN_INTERNET, MSGFLAG_ORIGIN_MISC_EXT e MSGFLAG_ORIGIN_EXT_SEND. Esses sinalizadores são definidos pelo provedor de transporte de entrada e indicam que a mensagem chegou de uma fonte que o gateway não pode considerar confiável. Isso significa que a mensagem se originou fora da organização ou internamente, mas de uma estação de trabalho não conhecida pelo gateway. De qualquer forma, a identidade do remetente pode não ser confirmada e há o risco de introduzir um vírus de computador na organização. O cliente deve exibir uma mensagem de aviso para o usuário e oferecer uma opção de excluir a mensagem sem abri-la.
Os provedores do repositório de mensagens definem o sinalizador MSGFLAG_UNMODIFIED para mensagens de entrada. MSGFLAG_UNMODIFIED indica que uma mensagem não foi alterada desde a entrega. Um cliente não pode limpar esse valor depois de ter sido definido por um provedor de repositório de mensagens.
Recursos relacionados
Especificações de protocolo
Fornece referências às especificações de protocolo Exchange Server relacionadas.
Manipula objetos de mensagem e anexo.
Arquivos de cabeçalho
Mapidefs.h
Fornece definições de tipo de dados.
Mapitags.h
Contém definições de propriedades listadas como nomes alternativos.