Uso de .Net Remoting

10/11/2004 - 12:54 por Hugo Fajardo | Informe spam
Buenos dias...

Les comento que estoy tratando de utilizar el .Net Remoting para acceder a
objetos remotamente en una red Lan. Pero el tema es que estuve tratando de
ver la ayuda en linea y los ejemplos no son muy didacticos.

Por ello agradeceré me envien algun ejemplo "de uso real", alguna
explicación o experiencias al implementar acceso remoto.

Saludos...

HUGO FAJARDO

Preguntas similare

Leer las respuestas

#1 Santi
11/11/2004 - 10:23 | Informe spam
Hola, a ver si te sirve este ejemplo:

using System.Runtime.Remoting.Channels; //To support and handle Channel and
channel sinks
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels.Tcp; //For HTTP channel


Del lado del servidor ( el que escucha ):

private void StartListener(int port)
{
// MSDN: If you want to register more than one TcpChannel, each must have
// a unique name. Set this property to the Empty string ("") if you want
//to ignore names, but avoid naming collisions.
IDictionary channelProperties = new Hashtable();
channelProperties["name"] = "";
channelProperties["port"] = port;
TcpChannel tcpChannel = new TcpChannel(channelProperties, null, null);

ChannelServices.RegisterChannel (tcpChannel); //Register channel
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(SessionData),
"SessionData",
WellKnownObjectMode.Singleton);
}


Del lado del cliente ( SessionData es el objeto remoto ):

public SessionClient( string serverIpAddress, int clientPort, int
serverPort )
{
try
{
string url = "tcp://" + serverIpAddress + ":" + serverPort +
"/SessionData";

// MSDN: If you want to register more than one TcpChannel, each must
have
// a unique name. Set this property to the Empty string ("") if you want
//to ignore names, but avoid naming collisions.
IDictionary channelProperties = new Hashtable();
channelProperties["name"] = "";
channelProperties["port"] = clientPort;
TcpChannel tcpChannel = new TcpChannel(channelProperties, null, null);

ChannelServices.RegisterChannel (tcpChannel); //Register the channel
this.sessionData = (SessionData)Activator.GetObject(typeof(SessionData),
url);
}
catch(Exception e)
{
throw new Exception("Error conectando con el servidor", e);
}
}
#2 Hugo Fajardo
11/11/2004 - 12:07 | Informe spam
Desde ya gracias por el ejemplo...

Pero... viendo el codigo me surgen un par de dudas:

1. Este codigo, en que clases estaria ubicado?
2. Como seria la comunicacion entre el servidor y el cliente?... es decir
como le pasaria una referencia a un objeto remoto?
3. Todo estaría en un solo proyecto? o necesitamos uno para el server y otro
para el client?

Esas dudas son las que se me vienen a la cabeza en este momento... para
aclarar mas el panorama.

Gracias y saludos
HUGO FAJARDO


"Santi" escribió en el mensaje
news:cmvanv$pqo$
Mostrar la cita
and
Mostrar la cita
have
Mostrar la cita
want
Mostrar la cita
want
Mostrar la cita
#3 Santi
15/11/2004 - 17:14 | Informe spam
Hola, perdona que haya tardado tanto en responder,

Tienes que crear dos clases, una cliente y otra servidor, eso lo puedes
tener en uno o dos proyectos, como prefieras. Tienes que tener luego dos
proyectos, uno que instancia el servidor y otro que instancia el cliente.

La referencia al objeto remoto se hace aqui:

this.sessionData = (SessionData)Activator.GetObject(typeof(SessionData),
url);

para ello el servidor tiene que estar exponiendo el objeto. Eso lo puedes
comprobar desde un navegador.

Te envio a tu correo un ejemplo funcionando.

un saludo.




"Hugo Fajardo" escribió en el mensaje
news:
Mostrar la cita
otro
Mostrar la cita
null);
Mostrar la cita
null);
Mostrar la cita
#4 Hugo Fajardo
16/11/2004 - 12:25 | Informe spam
Gracias por responder...

Todavia no recibi el mail con el ejemplo, el cual te agradeceré
infinitamente.

Por favor, te pido que envies el mail con el ejemplo a esta direccion:


Saludos...
HUGO FAJARDO


"Santi" escribió en el mensaje
news:cnakbd$s5d$
Mostrar la cita
decir
Mostrar la cita
Channel
Mostrar la cita
must
Mostrar la cita
must
Mostrar la cita
you
Mostrar la cita
channel
Mostrar la cita
#5 Santi
17/11/2004 - 10:29 | Informe spam
Enviado a esta dirección.

Un saludo.

Hugo Fajardo wrote:

Mostrar la cita
Ads by Google
Search Busqueda sugerida