System.Messaging Namespace

O namespace System.Messaging fornece classes que permitem que você se conecte, monitore e administre as filas de mensagens na rede e envie, receba ou inspecione mensagens. The System.Messaging namespace provides classes that allow you to connect to, monitor, and administer message queues on the network and send, receive, or peek messages.

Classes

AccessControlEntry

Especifica os direitos de acesso para um objeto de confiança (usuário, grupo ou computador) para realizar as implementações específicas ao aplicativo de tarefas comuns.Specifies access rights for a trustee (user, group, or computer) to perform application-specific implementations of common tasks.

AccessControlList

Contém uma lista de entradas de controle de acesso, especificando os direitos de acesso para um ou mais confiáveis.Contains a list of access control entries, specifying access rights for one or more trustees.

ActiveXMessageFormatter

Serializa ou desserializa os tipos de dados primitivos e outros objetos de ou para o corpo de uma mensagem do Enfileiramento de Mensagens, usando um formato compatível com o Componente ActiveX do MSMQ.Serializes or deserializes primitive data types and other objects to or from the body of a Message Queuing message, using a format that is compatible with the MSMQ ActiveX Component.

BinaryMessageFormatter

Serializa ou desserializa um objeto ou um grafo inteiro de objetos conectados, de ou para o corpo de uma mensagem do Enfileiramento de Mensagens, usando um formato binário.Serializes or deserializes an object, or an entire graph of connected objects, to or from the body of a Message Queuing message, using a binary format.

Cursor

Um Cursor é usado para manter um local específico em um MessageQueue ao ler as mensagens da fila.A Cursor is used to maintain a specific location in a MessageQueue when reading the queue's messages.

DefaultPropertiesToSend

Especifica os valores de propriedade padrão que serão usados ao enviar objetos diferentes das instâncias Message para uma fila de mensagens.Specifies the default property values that will be used when sending objects other than Message instances to a message queue.

Message

Concede acesso às propriedades necessárias para definir uma mensagem de Enfileiramento de Mensagens.Provides access to the properties needed to define a Message Queuing message.

MessageEnumerator

Fornece um cursor somente de avanço para enumerar por meio de mensagens em uma fila de mensagens.Provides a forward-only cursor to enumerate through messages in a message queue.

MessagePropertyFilter

Controla e seleciona as propriedades que são recuperadas ao espiar ou receber mensagens de uma fila de mensagens.Controls and selects the properties that are retrieved when peeking or receiving messages from a message queue.

MessageQueue

Fornece acesso a uma fila de um servidor do Enfileiramento de Mensagens.Provides access to a queue on a Message Queuing server.

MessageQueueAccessControlEntry

Especifica os direitos de acesso para um objeto de confiança (usuário, grupo ou computador) para executar tarefas de Enfileiramento de Mensagens.Specifies access rights for a trustee (user, group, or computer) to perform Message Queuing tasks.

MessageQueueCriteria

Filtra filas de mensagens ao executar uma consulta usando a classe MessageQueue, método GetPublicQueues().Filters message queues when performing a query using the MessageQueue class's GetPublicQueues() method.

MessageQueueEnumerator

Fornece um cursor somente de avanço para enumerar por meio de mensagens em uma fila de mensagens.Provides a forward-only cursor to enumerate through messages in a message queue.

MessageQueueException

A exceção que é lançada se ocorrer um erro interno do Enfileiramento de Mensagens da Microsoft.The exception that is thrown if a Microsoft Message Queuing internal error occurs.

MessageQueueInstaller

Permite que você instale e configure uma fila de que seu aplicativo precisa para ser executado.Allows you to install and configure a queue that your application needs in order to run. Essa classe é chamada pelo utilitário de instalação, por exemplo, InstallUtil.exe, ao instalar um MessageQueue.This class is called by the installation utility, for example, InstallUtil.exe, when installing a MessageQueue.

MessageQueuePermission

Permite o controle de permissões de acesso do código para mensagens.Allows control of code access permissions for messaging.

MessageQueuePermissionAttribute

Permite verificações de permissão MessageQueue declarativa.Allows declarative MessageQueue permission checks.

MessageQueuePermissionEntry

Define a menor unidade de uma permissão de segurança de acesso do código definida para mensagens.Defines the smallest unit of a code access security permission set for messaging.

MessageQueuePermissionEntryCollection

Contém uma coleção fortemente tipada de objetos MessageQueuePermissionEntry.Contains a strongly typed collection of MessageQueuePermissionEntry objects.

MessageQueueTransaction

Fornece uma transação interna do Enfileiramento de Mensagens.Provides a Message Queuing internal transaction.

MessagingDescriptionAttribute

Especifica uma descrição de uma propriedade ou evento.Specifies a description for a property or event.

PeekCompletedEventArgs

Fornece dados para o evento de PeekCompleted .Provides data for the PeekCompleted event. Quando sua operação de espiada assíncrona chama um manipulador de eventos, uma instância dessa classe é passada para o manipulador.When your asynchronous peek operation calls an event handler, an instance of this class is passed to the handler.

ReceiveCompletedEventArgs

Fornece dados para o evento de ReceiveCompleted .Provides data for the ReceiveCompleted event. Quando a operação assíncrona de recebimento chama um manipulador de eventos, uma instância dessa classe é passada para o manipulador.When your asynchronous receive operation calls an event handler, an instance of this class is passed to the handler.

SecurityContext

Representa o contexto de segurança para uma mensagem em uma fila.Represents the security context for a message in a queue.

Trustee

Especifica uma conta de usuário, conta de grupo ou sessão de logon à qual se aplica uma entrada de controle de acesso.Specifies a user account, group account, or logon session to which an access control entry applies.

XmlMessageFormatter

Serializa e desserializa objetos para ou do corpo de uma mensagem, usando o formato XML baseado na definição de esquema XSD.Serializes and deserializes objects to or from the body of a message, using the XML format based on the XSD schema definition.

Interfaces

IMessageFormatter

Serializa ou desserializa objetos do corpo de uma mensagem do Enfileiramento de Mensagens.Serializes or deserializes objects from the body of a Message Queuing message.

Enumerações

AccessControlEntryType

Especifica se os direitos de acesso para um confiável devem ser permitidos, negados ou revogados.Specifies whether to allow, deny, or revoke access rights for a trustee.

AcknowledgeTypes

Especifica os tipos de mensagem de confirmação que o Enfileiramento de Mensagens retorna para o aplicativo de envio.Specifies the types of acknowledgment message that Message Queuing returns to the sending application.

Acknowledgment

Especifica o resultado de uma tentativa de entrega de mensagem.Specifies the result of an attempted message delivery.

CryptographicProviderType

Especifica os provedores de serviços criptográficos disponíveis para validar assinaturas digitais.Specifies the cryptographic service providers available for validating digital signatures.

EncryptionAlgorithm

Especifica o algoritmo de encriptação utilizado para criptografar o corpo da mensagem de uma mensagem privada.Specifies the encryption algorithm used to encrypt the message body of a private message.

EncryptionRequired

Especifica o nível de privacidade de mensagens recebidas pela fila.Specifies the privacy level of messages received by the queue.

GenericAccessRights

Usa o formato de acesso do Windows 2000 e Windows NT para especificar um conjunto comum de direitos de acesso que o Enfileiramento de Mensagens mapeia tanto para os direitos de acesso padrão quanto para aqueles específicos de objetos para leitura, gravação e execução.Uses the Windows 2000 and Windows NT access format to specify a set of common access rights that Message Queuing maps to both standard and object-specific access rights for reading, writing, and executing.

HashAlgorithm

Especifica o algoritmo de hash usado pelo Serviço de Enfileiramento de Mensagens na autenticação de mensagens.Specifies the hash algorithm used by Message Queuing when authenticating messages.

MessageLookupAction

Especifica uma mensagem para espiar ou receber de uma fila de mensagens.Specifies a message to peek at or receive from a message queue.

MessagePriority

Especifica que a prioridade Enfileiramento de Mensagens aplica-se a uma mensagem enquanto ela estiver em trânsito para uma fila e ao inserir a mensagem na fila de destino.Specifies the priority Message Queuing applies to a message while it is en route to a queue, and when inserting the message into the destination queue.

MessageQueueAccessRights

Especifica um conjunto direitos de acesso específicos do objeto para operações específicas para o Enfileiramento de Mensagens.Specifies a set of object-specific access rights for operations specific to Message Queuing.

MessageQueueErrorCode

Identifica a origem de um erro que ocorreu dentro do aplicativo de Enfileiramento de Mensagens e gerou uma exceção MessageQueueException.Identifies the source of an error that occurred within the Message Queuing application and generated a MessageQueueException exception.

MessageQueuePermissionAccess

Define os níveis de acesso usados pelas classes de permissão System.Messaging.Defines access levels used by System.Messaging permission classes.

MessageQueueTransactionStatus

Especifica o estado de uma transação interna de Enfileiramento de Mensagens.Specifies the state of an internal Message Queuing transaction.

MessageQueueTransactionType

Especifica o tipo de uma transação de Enfileiramento de Mensagens.Specifies the type of a Message Queuing transaction.

MessageType

Identifica o tipo de uma mensagem.Identifies the type of a message. Uma mensagem pode ser uma mensagem típica do serviço de enfileiramento de mensagens, uma mensagem de confirmação positiva (de chegada e de leitura) ou negativa (de chegada e de leitura) ou uma mensagem de relatório.A message can be a typical Message Queuing message, a positive (arrival and read) or negative (arrival and read) acknowledgment message, or a report message.

PeekAction

Indica se é necessário espiar a mensagem atual em uma fila ou a próxima mensagem.Indicates whether to peek the current message in a queue, or the next message.

QueueAccessMode

Especifica o modo de acesso para um MessageQueue no momento da criação.Specifies the access mode for a MessageQueue at creation time.

StandardAccessRights

Especifica um conjunto de direitos de acesso padrão que corresponde a operações comuns para a maioria dos tipos de objetos protegíveis.Specifies a set of standard access rights that correspond to operations common to most types of securable objects.

TrusteeType

Especifica o tipo de um objeto de confiança.Specifies the type of a trustee.

Delegados

PeekCompletedEventHandler

Representa o método que manipulará o evento de PeekCompleted de MessageQueue.Represents the method that will handle the PeekCompleted event of a MessageQueue.

ReceiveCompletedEventHandler

Representa o método que manipulará o evento de ReceiveCompleted de MessageQueue.Represents the method that will handle the ReceiveCompleted event of a MessageQueue.

Comentários

Os membros de MessageQueue classe incluem os seguintes métodos para ler e gravar mensagens na fila:Members of the MessageQueue class include the following methods for reading and writing messages to the queue:

  • O Send método permite que seu aplicativo gravar mensagens na fila.The Send method enables your application to write messages to the queue. Sobrecargas do método permitem que você especifique se deseja enviar sua mensagem usando um Message (que fornece controle detalhado sobre as informações enviadas) ou qualquer outro objeto gerenciado, incluindo classes específicas de aplicativo.Overloads of the method enable you to specify whether to send your message using a Message (which provides detailed control over the information you send) or any other managed object, including application-specific classes. O método também dá suporte ao envio de mensagens como parte de uma transação.The method also supports sending messages as part of a transaction.

  • O Receive, ReceiveById, e ReceiveByCorrelationId métodos fornecem funcionalidade para ler as mensagens de uma fila.The Receive, ReceiveById, and ReceiveByCorrelationId methods provide functionality for reading messages from a queue. Como o Send método, esses métodos fornecem sobrecargas que dão suporte ao processamento de fila transacional.Like the Send method, these methods provide overloads that support transactional queue processing. Esses métodos também fornecem sobrecargas com o tempo limite.These methods also provide overloads with time-out.

    Os parâmetros de saída que permitem o processamento continue se a fila está vazia.Out parameters that enable processing to continue if the queue is empty. Como esses métodos são exemplos de processamento síncrono, interromperem o thread atual até que uma mensagem esteja disponível, a menos que você especifique um tempo limite.Because these methods are examples of synchronous processing, they interrupt the current thread until a message is available, unless you specify a time-out.

  • O Peek método é semelhante ao Receive, mas não faz com que uma mensagem a ser removido da fila quando ela é lida.The Peek method is similar to Receive, but it does not cause a message to be removed from the queue when it is read. Porque Peek não altera o conteúdo da fila, não há nenhuma sobrecarga para dar suporte ao processamento transacional.Because Peek does not change the queue contents, there are no overloads to support transactional processing. No entanto, porque Peek, como Receive, lê as mensagens da fila de forma síncrona, sobrecargas do método dá suporte à especificação de um tempo limite para evitar que o thread de espera indefinidamente.However, because Peek, like Receive, reads messages synchronously from the queue, overloads of the method do support specifying a time-out in order to prevent the thread from waiting indefinitely.

  • O BeginPeek, EndPeek(IAsyncResult), BeginReceive, e EndReceive(IAsyncResult) métodos fornecem maneiras para ler as mensagens da fila de forma assíncrona.The BeginPeek, EndPeek(IAsyncResult), BeginReceive, and EndReceive(IAsyncResult) methods provide ways to asynchronously read messages from the queue. Eles não interrompam o thread atual enquanto aguarda uma mensagem chegar na fila.They do not interrupt the current thread while waiting for a message to arrive in the queue.

Os seguintes métodos do MessageQueue classe fornecem funcionalidade para recuperar listas de filas pelos critérios especificados e determinar se as filas específicas existirem:The following methods of the MessageQueue class provide functionality for retrieving lists of queues by specified criteria and determining if specific queues exist:

Outros métodos para o MessageQueue classe fornecem a seguinte funcionalidade:Other methods of the MessageQueue class provide the following functionality:

  • Criar e excluir filas do enfileiramento de mensagens.Creating and deleting Message Queueing queues.

  • Usando um enumerador de mensagem para percorrer as mensagens em uma fila.Using a message enumerator to step through the messages in a queue.

  • Usando um enumerador de fila para iterar por meio de filas no sistema.Using a queue enumerator for iterating through the queues on the system.

  • Configurar direitos de acesso com base em ACL.Setting ACL-based access rights.

  • Trabalhando com o cache de conexão.Working with the connection cache.

O Message classe fornece controle detalhado sobre as informações enviadas para uma fila, e é o objeto usado ao receber ou espiar mensagens de uma fila.The Message class provides detailed control over the information you send to a queue, and is the object used when receiving or peeking messages from a queue. Além do corpo da mensagem, as propriedades do Message classe incluem configurações de confirmação, seleção de formatador, identificação, informações de autenticação e criptografia, os carimbos de hora, indicações sobre o uso de rastreamento, o registro no diário do servidor, e filas de inatividade e dados da transação.Besides the message body, the properties of the Message class include acknowledgment settings, formatter selection, identification, authentication and encryption information, timestamps, indications about using tracing, server journaling, and dead-letter queues, and transaction data.

O MessageQueue componente está associado com os seguintes formatadores de três, que permitem que você serializar e desserializar mensagens enviadas e recebidas das filas:The MessageQueue component is associated with the following three formatters, which enable you to serialize and deserialize messages sent and received from queues:

  • O XmlMessageFormatter fornece mensagens flexíveis, permitindo o controle de versão independente dos tipos serializados no cliente e servidor.The XmlMessageFormatter provides loosely coupled messaging, enabling independent versioning of serialized types on the client and server.

  • O ActiveXMessageFormatter é compatível com o controle COM MSMQ.The ActiveXMessageFormatter is compatible with the MSMQ COM control. Ele permite que você enviar tipos que podem ser recebidos pelo controle e para receber os tipos que foram enviados pelo controle.It allows you to send types that can be received by the control and to receive types that were sent by the control.

  • O BinaryMessageFormatter fornece uma alternativa mais rápida para o XmlMessageFormatter, mas sem o benefício de sistema de mensagens menos rígida.The BinaryMessageFormatter provides a faster alternative to the XmlMessageFormatter, but without the benefit of loosely coupled messaging.

Outras classes na Messaging código de acesso e segurança baseada em ACL, dar suporte a namespace filtragem Message propriedades quando ler mensagens de uma fila e uso de transações ao enviar e receber mensagens.Other classes in the Messaging namespace support code-access and ACL-based security, filtering Message properties when reading messages from a queue, and using transactions when sending and receiving messages.