Compartir a través de


IpcChannel.CreateMessageSink(String, Object, String) Método

Definición

Devuelve un receptor de mensajes de canal que envía mensajes a la dirección URL o al objeto de datos del canal especificados.

public:
 virtual System::Runtime::Remoting::Messaging::IMessageSink ^ CreateMessageSink(System::String ^ url, System::Object ^ remoteChannelData, [Runtime::InteropServices::Out] System::String ^ % objectURI);
public System.Runtime.Remoting.Messaging.IMessageSink CreateMessageSink (string url, object remoteChannelData, out string objectURI);
abstract member CreateMessageSink : string * obj * string -> System.Runtime.Remoting.Messaging.IMessageSink
override this.CreateMessageSink : string * obj * string -> System.Runtime.Remoting.Messaging.IMessageSink
Public Function CreateMessageSink (url As String, remoteChannelData As Object, ByRef objectURI As String) As IMessageSink

Parámetros

url
String

Dirección URL a la que el nuevo receptor debe enviar mensajes. Puede ser null.

remoteChannelData
Object

Objeto de datos del canal del host remoto al que el nuevo receptor debe enviar mensajes. Puede ser null.

objectURI
String

Cuando este método finaliza, contiene una dirección URI del nuevo receptor de mensajes del canal que envía mensajes a la dirección URL o al objeto de datos del canal especificados. Este parámetro se pasa sin inicializar.

Devoluciones

Receptor de mensajes del canal que envía mensajes a la dirección URL o al objeto de datos de canal especificados.

Implementaciones

Ejemplos

En el ejemplo de código siguiente, se muestra cómo se utiliza el método CreateMessageSink. Este ejemplo de código es parte de un ejemplo mayor proporcionado para la clase IpcChannel.

// Create a message sink.
String^ objectUri;
System::Runtime::Remoting::Messaging::IMessageSink^ messageSink = channel->CreateMessageSink(
   L"ipc://localhost:9090/RemoteObject.rem", nullptr, objectUri );
Console::WriteLine( L"The URI of the message sink is {0}.", objectUri );
if ( messageSink != nullptr )
{
   Console::WriteLine( L"The type of the message sink is {0}.", messageSink->GetType() );
}
// Create a message sink.
string objectUri;
System.Runtime.Remoting.Messaging.IMessageSink messageSink =
    channel.CreateMessageSink(
        "ipc://localhost:9090/RemoteObject.rem", null,
        out objectUri);
Console.WriteLine("The URI of the message sink is {0}.",
    objectUri);
if (messageSink != null)
{
    Console.WriteLine("The type of the message sink is {0}.",
        messageSink.GetType().ToString());
}

Comentarios

El CreateMessageSink método devuelve un receptor de mensajes de canal que entrega mensajes a la dirección URL especificada o al objeto de datos del canal. Si el uri parámetro es null, remoteChannelData se usa como destino para el receptor. url Los parámetros o remoteChannelData pueden ser null, pero no ambos.

Los receptores de canal proporcionan un punto de complemento que permite el acceso a los mensajes subyacentes que fluyen a través del canal, así como la secuencia utilizada por el mecanismo de transporte para enviar mensajes a un objeto remoto. Los receptores de canal se vinculan juntos en una cadena de ChannelSinkProviders y todos los mensajes de canal fluyen a través de esta cadena de receptores antes de que el mensaje se serialice y transporte por fin.

Se aplica a