Partager via


TcpChannel Constructeurs

Définition

Initialise une nouvelle instance de la classe TcpChannel.

Surcharges

TcpChannel()

Initialise une nouvelle instance de la classe TcpChannel en activant uniquement un canal client et non un canal serveur.

TcpChannel(Int32)

Initialise une nouvelle instance de la classe TcpChannel avec un canal serveur qui écoute sur le port spécifié.

TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)

Initialise une nouvelle instance de la classe TcpChannel avec les propriétés de configuration et les récepteurs spécifiés.

TcpChannel()

Initialise une nouvelle instance de la classe TcpChannel en activant uniquement un canal client et non un canal serveur.

public:
 TcpChannel();
public TcpChannel ();
Public Sub New ()

Exemples

L’exemple de code suivant montre comment utiliser ce constructeur.

// Create the channel.
TcpChannel^ clientChannel = gcnew TcpChannel();
// Create the channel.
TcpChannel clientChannel = new TcpChannel();

Remarques

Le constructeur sans paramètre initialise tous les champs à leurs valeurs par défaut. Si le constructeur sans paramètre est utilisé, le canal fonctionne uniquement en tant que canal client et n’écoute aucun port.

S’applique à

TcpChannel(Int32)

Initialise une nouvelle instance de la classe TcpChannel avec un canal serveur qui écoute sur le port spécifié.

public:
 TcpChannel(int port);
public TcpChannel (int port);
new System.Runtime.Remoting.Channels.Tcp.TcpChannel : int -> System.Runtime.Remoting.Channels.Tcp.TcpChannel
Public Sub New (port As Integer)

Paramètres

port
Int32

Port sur lequel le canal serveur est à l'écoute.

Exemples

L’exemple de code suivant illustre l’utilisation de cette méthode. Pour demander qu’un port disponible soit attribué dynamiquement, définissez le paramètre sur port zéro.

// Registers the server and waits until the user hits enter.
TcpChannel^ chan = gcnew TcpChannel( 8084 );
ChannelServices::RegisterChannel( chan );

RemotingConfiguration::RegisterWellKnownServiceType(
   Type::GetType( "HelloServer,server" ),
   "SayHello",
   WellKnownObjectMode::SingleCall );
System::Console::WriteLine( L"Hit <enter> to exit..." );
System::Console::ReadLine();
// Registers the server and waits until the user hits enter.
TcpChannel chan = new TcpChannel(8084);
ChannelServices.RegisterChannel(chan);

RemotingConfiguration.RegisterWellKnownServiceType(Type.GetType("HelloServer,server"),
                                                  "SayHello",
                                                   WellKnownObjectMode.SingleCall);
System.Console.WriteLine("Hit <enter> to exit...");
System.Console.ReadLine();
' Registers the server and waits until the user hits enter.
Dim chan As New TcpChannel(8084)
ChannelServices.RegisterChannel(chan)

RemotingConfiguration.RegisterWellKnownServiceType(Type.GetType("HelloServer,server"), "SayHello", WellKnownObjectMode.SingleCall)
System.Console.WriteLine("Hit <enter> to exit...")
System.Console.ReadLine()

Remarques

Pour demander au système de communication à distance de choisir un port ouvert en votre nom, spécifiez le port 0 (zéro). Cela crée une TcpServerChannel instance pour écouter les requêtes sur le port attribué dynamiquement. Cela est généralement effectué sur le client pour s’assurer qu’un TcpServerChannel écoute les méthodes de rappel.

Si 0 est passé au constructeur, est TcpChannel instancié pour utiliser un port libre.

S’applique à

TcpChannel(IDictionary, IClientChannelSinkProvider, IServerChannelSinkProvider)

Initialise une nouvelle instance de la classe TcpChannel avec les propriétés de configuration et les récepteurs spécifiés.

public:
 TcpChannel(System::Collections::IDictionary ^ properties, System::Runtime::Remoting::Channels::IClientChannelSinkProvider ^ clientSinkProvider, System::Runtime::Remoting::Channels::IServerChannelSinkProvider ^ serverSinkProvider);
public TcpChannel (System.Collections.IDictionary properties, System.Runtime.Remoting.Channels.IClientChannelSinkProvider clientSinkProvider, System.Runtime.Remoting.Channels.IServerChannelSinkProvider serverSinkProvider);
new System.Runtime.Remoting.Channels.Tcp.TcpChannel : System.Collections.IDictionary * System.Runtime.Remoting.Channels.IClientChannelSinkProvider * System.Runtime.Remoting.Channels.IServerChannelSinkProvider -> System.Runtime.Remoting.Channels.Tcp.TcpChannel
Public Sub New (properties As IDictionary, clientSinkProvider As IClientChannelSinkProvider, serverSinkProvider As IServerChannelSinkProvider)

Paramètres

properties
IDictionary

Collection IDictionary qui spécifie les valeurs des propriétés de configuration devant être utilisées par les canaux client et serveur.

clientSinkProvider
IClientChannelSinkProvider

Implémentation de IClientChannelSinkProvider devant être utilisée par le canal client.

serverSinkProvider
IServerChannelSinkProvider

Implémentation de IServerChannelSinkProvider devant être utilisée par le canal serveur.

Exceptions

La mise en forme d'une propriété de canal fourni est incorrecte.

Exemples

L’exemple de code suivant montre comment utiliser ce constructeur.

// Specify the properties for the server channel.
System::Collections::IDictionary^ dict = gcnew System::Collections::Hashtable;
dict[ "port" ] = 9090;
dict[ "authenticationMode" ] = "IdentifyCallers";

// Set up the server channel.
TcpChannel^ serverChannel = gcnew TcpChannel( dict,nullptr,nullptr );
ChannelServices::RegisterChannel( serverChannel );
// Specify the properties for the server channel.
System.Collections.IDictionary dict =
    new System.Collections.Hashtable();
dict["port"] = 9090;
dict["authenticationMode"] = "IdentifyCallers";

// Set up the server channel.
TcpChannel serverChannel = new TcpChannel(dict, null, null);
ChannelServices.RegisterChannel(serverChannel);

Remarques

Pour plus d’informations sur les propriétés de configuration de canal, consultez Propriétés de configuration du canal et du formateur.

Les récepteurs de canal fournissent un point de plug-in qui permet d’accéder aux messages sous-jacents qui transitent par le canal, ainsi qu’au flux utilisé par le mécanisme de transport pour envoyer des messages à un objet distant. Les récepteurs de canal sont également responsables du transport des messages entre le client et le serveur. Les récepteurs de canaux sont liés ensemble dans une chaîne, et tous les messages de canal transitent par cette chaîne de récepteurs avant que le message ne soit finalement sérialisé et transporté. Si vous n’avez pas besoin de la fonctionnalité récepteur, définissez les clientSinkProvider paramètres et serverSinkProvider sur null.

Voir aussi

S’applique à