Compartilhar via


ChannelServices.RegisterChannel Método

Definição

Sobrecargas

RegisterChannel(IChannel)
Obsoleto.

Registra um canal com os serviços de canal. RegisterChannel(IChannel) é obsoleto. Use RegisterChannel(IChannel, Boolean) em seu lugar.

RegisterChannel(IChannel, Boolean)

Registra um canal com os serviços de canal.

RegisterChannel(IChannel)

Cuidado

Use System.Runtime.Remoting.ChannelServices.RegisterChannel(IChannel chnl, bool ensureSecurity) instead.

Registra um canal com os serviços de canal. RegisterChannel(IChannel) é obsoleto. Use RegisterChannel(IChannel, Boolean) em seu lugar.

public:
 static void RegisterChannel(System::Runtime::Remoting::Channels::IChannel ^ chnl);
public static void RegisterChannel (System.Runtime.Remoting.Channels.IChannel chnl);
[System.Obsolete("Use System.Runtime.Remoting.ChannelServices.RegisterChannel(IChannel chnl, bool ensureSecurity) instead.", false)]
public static void RegisterChannel (System.Runtime.Remoting.Channels.IChannel chnl);
static member RegisterChannel : System.Runtime.Remoting.Channels.IChannel -> unit
[<System.Obsolete("Use System.Runtime.Remoting.ChannelServices.RegisterChannel(IChannel chnl, bool ensureSecurity) instead.", false)>]
static member RegisterChannel : System.Runtime.Remoting.Channels.IChannel -> unit
Public Shared Sub RegisterChannel (chnl As IChannel)

Parâmetros

chnl
IChannel

O canal a ser registrado.

Atributos

Exceções

O parâmetro chnl é null.

O canal já foi registrado.

Pelo menos um dos chamadores no topo da pilha de chamadas não tem permissão para configurar canais e tipos de comunicação remota.

Exemplos

HttpChannel^ channel = gcnew HttpChannel( 9000 );
ChannelServices::RegisterChannel( channel, false );
RemotingConfiguration::RegisterWellKnownServiceType( SampleNamespace::SampleService::typeid, "MySampleService/SampleService::soap", WellKnownObjectMode::Singleton );
Console::WriteLine( "** Press enter to end the server process. **" );
Console::ReadLine();
HttpChannel channel = new HttpChannel(9000);
ChannelServices.RegisterChannel(channel);

RemotingConfiguration.RegisterWellKnownServiceType( typeof(SampleService),
"MySampleService/SampleService.soap", WellKnownObjectMode.Singleton);

Console.WriteLine("** Press enter to end the server process. **");
Console.ReadLine();
Dim channel As New HttpChannel(9000)
ChannelServices.RegisterChannel(channel)
RemotingConfiguration.RegisterWellKnownServiceType(GetType(SampleService), "MySampleService/SampleService.soap", WellKnownObjectMode.Singleton)

Console.WriteLine("** Press enter to end the server process. **")
Console.ReadLine()

Comentários

Observação

RegisterChannel(IChannel) é obsoleto. Use RegisterChannel(IChannel, Boolean) em seu lugar.

O RegisterChannel método usa a IChannel interface de um objeto de canal. O do canal ChannelName deve ser exclusivo ou o canal deve ser anônimo. Um canal será anônimo se o IChannel.ChannelName estiver definido como null ou Empty usando a name propriedade de configuração.

Não é possível registrar dois canais com o mesmo nome em um AppDomain. Por padrão, o nome de um HttpChannel é "http" e o nome de um TcpChannel é "tcp". Portanto, se você quiser registrar dois canais do mesmo tipo, deverá especificar um nome diferente para um deles por meio de propriedades de configuração.

Para obter mais informações sobre as propriedades de configuração de canal, consulte HttpChannelElemento e <canal> (Modelo).

Aplica-se a

RegisterChannel(IChannel, Boolean)

Registra um canal com os serviços de canal.

public:
 static void RegisterChannel(System::Runtime::Remoting::Channels::IChannel ^ chnl, bool ensureSecurity);
public static void RegisterChannel (System.Runtime.Remoting.Channels.IChannel chnl, bool ensureSecurity);
static member RegisterChannel : System.Runtime.Remoting.Channels.IChannel * bool -> unit
Public Shared Sub RegisterChannel (chnl As IChannel, ensureSecurity As Boolean)

Parâmetros

chnl
IChannel

O canal a ser registrado.

ensureSecurity
Boolean

true garante que a segurança seja habilitada, caso contrário, false. Definir o valor como false não afeta a configuração de segurança no canal TCP ou IPC.

Exceções

O parâmetro chnl é null.

O canal já foi registrado.

Pelo menos um dos chamadores no topo da pilha de chamadas não tem permissão para configurar canais e tipos de comunicação remota.

Sem suporte para HttpServerChannel. Hospede o serviço usando IIS (Serviços de Informações da Internet), se você precisar de um canal de HTTP seguro.

Comentários

O RegisterChannel(IChannel, Boolean) método recebe a IChannel interface de um objeto de canal. O do canal ChannelName deve ser exclusivo ou o canal deve ser anônimo. Um canal será anônimo se o IChannel.ChannelName estiver definido como null ou Empty usando a name propriedade de configuração.

Não é possível registrar dois canais com o mesmo nome em um AppDomain. Por padrão, o nome de um HttpChannel é "http" e o nome de um TcpChannel é "tcp". Portanto, se você quiser registrar dois canais do mesmo tipo, deverá especificar um nome diferente para um deles por meio de propriedades de configuração.

Para obter mais informações sobre as propriedades de configuração de canal, consulte Propriedades de configuração de canal e formatador e <elemento de canal> (Modelo).

Se o ensureSecurity parâmetro for definido como true, o sistema de comunicação remota determinará se o canal implementa ISecurableChannele, em caso afirmativo, habilitará a criptografia e as assinaturas digitais. Uma exceção será gerada se o canal não implementar ISecurableChannel.

Observação

A configuração ensureSecurity para true lança um RemotingException para o HttpServerChannel canal em todas as plataformas. Você deve hospedar seu serviço no IIS se quiser usar um canal http seguro.

Aplica-se a