ChannelServices.RegisterChannel Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.