PDF de programación - Creando un servidor remoto mediante Visual Basic .NET

<<>>
Imágen de pdf Creando un servidor remoto mediante Visual Basic .NET

Creando un servidor remoto mediante Visual Basic .NETgráfica de visualizaciones

Publicado el 27 de Diciembre del 2020
814 visualizaciones desde el 27 de Diciembre del 2020
49,1 KB
4 paginas
Creando un servidor remoto mediante Visual
Basic .NET


En este artículo se muestra cómo crear un servidor remoto sencillo al que puede tener acceso
otra aplicación. La aplicación que tiene acceso a este servidor puede estar en el mismo equipo,
en otro equipo o en otra red. El servidor remoto se divide en dos partes: el objeto de servidor y la
aplicación de servidor. El objeto de servidor es el objeto con el que se comunica el cliente y la
aplicación de servidor se utiliza para registrar el objeto de servidor con el motor de tiempo de
ejecución Remoting.



Requisitos

En la lista siguiente se describe el hardware, el software, la infraestructura de red y los Service
Pack recomendados que se necesitarán:

Visual Studio .NET

En el presente artículo se da por supuesto que está familiarizado con los temas siguientes:

Visual Studio .NET
Visual Basic .NET
Redes



Crear un objeto de servidor remoto

El primer paso para crear la aplicación de servidor consiste en crear el objeto de servidor. El
objeto de servidor es la instancia que crea la aplicación cliente y con el que se comunica en el
equipo servidor. La aplicación cliente lleva esto a cabo a través de un objeto proxy que se crea
en el cliente. En este ejemplo, el objeto de servidor reside en una Biblioteca de clases (DLL) y se
llama myRemoteClass.

1. Cree una nueva aplicación de biblioteca de clases en Visual Basic .NET. Se creará Class1

de forma predeterminada.

2. En el Explorador de soluciones, cambie el nombre del archivo de código Class1.vb a

ServerClass.vb.

3. Abra ServerClass.vb y cambie el nombre Class1 a myRemoteClass. myRemoteClass

debe heredarse de la clase MarshalByRefObject. Esta clase debe aparecer del
siguiente modo:

Public Class myRemoteClass

Inherits MarshalByRefObject



End Class

4. Agregue un método público a myRemoteClass, que toma una cadena, muestra un

mensaje en la consola con un valor de la cadena y devuelve True si la cadena no está
vacía.

Public Class myRemoteClass



Inherits MarshalByRefObject

Public Function SetString(sTemp As String) As Boolean

Try

Console.WriteLine("Esta cadena '{0}' tiene una longitud de {1}", sTemp, Len(sTemp))



Return (sTemp <> "")

Catch



Return (False)

End Try

End Function

End Class

5. Genere el proyecto para crear el ensamblado ServerClass.dll.
6. Guarde y cierre el proyecto.



Crear una aplicación de servidor remoto

Después de crear el objeto de servidor con el que se comunicará el cliente, debe registrar este
objeto con el marco de trabajo Remoting. Al registrar el objeto, también debe iniciar el servidor y
hacer que el servidor escuche en un puerto a los clientes que intentan conectarse a ese puerto.
Para ello, necesita un tipo de proyecto que cree un archivo ejecutable. El objeto de servidor se
incluye en un proyecto independiente, de manera que pueda crear fácilmente una referencia al
objeto de servidor desde el proyecto del cliente. Si incluye el objeto de servidor en este proyecto,
no puede hacer referencia a él, ya que las referencias sólo se pueden establecer en archivos
DLL.

Para simplificar, cree una nueva aplicación de consola en Visual Basic .NET para iniciar el
servidor remoto. Se creará Module1 de forma predeterminada.

En el Explorador de soluciones, cambie el nombre del archivo Module1.vb a
ServerObject.vb.

Agregue una referencia al espacio de nombres System.Runtime.Remoting.

Agregue una referencia al ensamblado ServerClass.dll que creó en la sección anterior.

Utilice la instrucción Imports de los espacios de nombres Remoting, Remoting.Channels y
Remoting.Channels.Tcp de forma que no tenga que suministrar declaraciones de dichos
espacios de nombres más adelante en el código. Debe utilizar la instrucción Imports antes
que cualquier otra declaración.

Imports System.Runtime.Remoting

Imports System.Runtime.Remoting.Channels

Imports System.Runtime.Remoting.Channels.Tcp

Declare la variable apropiada. Para ello, declare e inicialice un objeto TcpChannel que
escuche si los clientes se conectan a un puerto determinado, que en este ejemplo es el
puerto 8085. Utilice el método RegisterChannel para registrar el canal con los servicios de
canal. Agregue el siguiente código de declaración al procedimiento Main del módulo
predeterminado:

Dim chan As TcpChannel = New TcpChannel(8085)

ChannelServices.RegisterChannel(chan)

Llame al método RegisterWellKnownType del objeto RemotingConfiguration para
registrar el objeto ServerClass con el marco de trabajo Remoting y especifique los
parámetros siguientes en el código:

a. El nombre de tipo completo del objeto que se va a registrar (que es

ServerClass.myRemoteClass en este ejemplo), seguido del nombre de
ensamblado ServerClass. Especifique tanto el nombre del espacio de nombres
como el nombre de la clase. Como no especificó un espacio de nombres en la
sección anterior, se utilizará el espacio de nombres raíz predeterminado.

b. Asigne al extremo donde se va a publicar el objeto el nombre RemoteTest . Los

clientes necesitan conocer este nombre para conectarse al objeto.

c. Utilice el modo de objeto SingleCall para especificar el parámetro final. El modo
de objeto especifica la duración del objeto cuando se activa en el servidor. En el
caso de los objetos SingleCall, se crea una nueva instancia de la clase para
cada llamada realizada por un cliente, aunque el mismo cliente llame al mismo

método más de una vez. Por el contrario, los objetos Singleton se crean sólo
una vez y todos los clientes se comunican con el mismo objeto.

RemotingConfiguration.RegisterWellKnownServiceType( _

Type.GetType("ServerClass.myRemoteClass, ServerClass"), _

"RemoteTest", _

WellKnownObjectMode.SingleCall)

Utilice el método ReadLine del objeto Console para que la aplicación de servidor siga en
ejecución.

Console.WriteLine("Presione <ENTRAR> para salir...")

Console.ReadLine()

Genere el proyecto.

Guarde y cierre el proyecto.



Publicado Originalmente en ingles
http://support.microsoft.com/default.aspx?scid=kb;En;300951
  • Links de descarga
http://lwp-l.com/pdf18604

Comentarios de: Creando un servidor remoto mediante Visual Basic .NET (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad