El uso de la nueva tecnología WebClass de VB6 facilita la creación de aplicaciones flexibles y potentes basadas en Internet. A principios de este año, le mostramos cómo escribir una aplicación de registro que permita a los usuarios visitar su página y registrarse en un producto de software. User Registration Class", VBPJ, abril de 1998 y "Add E-Mail Registration to your Server", VBPJ, mayo de 1998]. Después del registro, la aplicación enviará una secuencia al usuario a través del número de correo electrónico y existirá una conexión a la Web. para continuar con el proceso de registro. La aplicación VB5 que le mostré anteriormente creó una DLL ActiveX que se ejecuta en el servidor web y una DLL que determina el estado del usuario y llama a la DLL correspondiente (la página de Active Server proporciona). un nuevo medio para escribir este tipo de aplicaciones, utilizando una nueva tecnología: WebClass.
En resumen, WebClass es ActiveX que se ejecuta en la DLL del servidor web. Permite que el hipervínculo de la página HTML en el navegador del cliente active eventos en la DLL del servidor. El modo de programación de WebClass es similar al modo VB tradicional: la diferencia es que en VB, el formulario contiene controles, mientras que la aplicación WebClass El programa es una página web que contiene controles. En el lado del servidor, para los desarrolladores, él conoce el. modelo de eventos VB completo, para que se pueda realizar un desarrollo web altamente interactivo. En esta columna, discutiremos cómo crear una aplicación WebClass simple para mostrarle lo simple que es.
Para crear una aplicación WebClass simple, debe iniciar VB6 y seleccionar. la aplicación IIS en el cuadro de diálogo Nuevo proyecto. Nombre el proyecto SimpleReg en la ventana Propiedades. Haga doble clic en el proyecto WebClass Designer en el navegador (puede ver la ventana Propiedades y el Explorador de proyectos a través del menú Ver). , asigne a la WebClass el nombre wcSimple e ingrese SimpleReg en la propiedad NameURL. Esto se creará al compilar la DLL ActiveX. Un archivo de inicio llamado SimpleReg.asp.
Una aplicación WebClass muestra HTML en el navegador del usuario mediante el uso de una plantilla HTML. Dado que VB6 no incluye un editor HTML, debe crear una plantilla HTML fuera de VB6 (el diseñador DHTML de VB6 no tiene nada que ver con WebClass). cualquier editor HTML, pero dado que Visual Studio incluye Visual InterDev (VID) 6.0, VID es una opción razonable.
Configure Visual Studio como el editor HTML predeterminado para Visual Basic en el menú Herramientas|Opciones de VB6. siguiendo la ruta de Visual InterDev: C:Promram FilesMicrosoft Visual StudioCommonIDE|IDE98Devenv.exe en el cuadro de edición HTML externo. Notificará a Visual InterDev para que cree un archivo de plantilla para su proyecto. Por ejemplo: si su plantilla. se llama WebPage.htm, luego InterDev crea una copia llamada Web1Page.htm. Si usa el Bloc de notas u otros editores para crear su plantilla, tenga esto en cuenta
en el código de rutina, el archivo SimpleReg.htm es una plantilla creada por Visual. InterDev. En el panel izquierdo del diseñador WebClass, seleccione la carpeta HTML Template WebItem. Puede agregar la plantilla SimpleReg al proyecto de la siguiente manera: haga clic en el botón AddHTML Template WebItem y haga clic en Seleccionar el archivo SimpleReg.htm en el cuadro de diálogo de selección de archivos. cuadro (consulte la Figura 1. Asigne al nuevo elemento web el nombre tplSimple. Haga doble clic en tplSimple para ver el código sobre WebClass_Start y reemplace el código original generado con el siguiente código para mostrar la plantilla al cargar WebClass:
Private Sub WebClass_Start(). )
'Muestra la plantilla HTML principal www.downcodes.com
Sesión("Título") = "Ingrese su" e "Información de registro"
tplSimple.WriteTemplate
End Sub
WebClass_Start es similar al proceso Form_Load de una aplicación VB tradicional. Ejecute el programa y observe la página HTML que muestra su navegador. Salga del navegador y finalice la aplicación VB (este es un cierre normal durante la depuración y el desarrollo). Método WebClass).
En WebClass Designer, haga clic con el botón derecho en tplSimple WebItem y seleccione Editar plantilla HTML en el menú contextual. Verá la página de la plantilla en su editor HTML predeterminado. Al leer el código fuente, podrá ver Esto es simple. página que consta de tres partes especiales llamadas etiquetas, en el siguiente formato:
< WC@TAGTITLE>Título</WC@TAGTITLE >
La parte de texto de estas etiquetas ("Título") la cambia usted en tiempo de ejecución. El código agregado a WebClass se reemplaza. Cuando se ejecuta el método WriteTemplate, llama a un procedimiento especial llamado ProcessTag una vez para cada etiqueta encontrada en la plantilla HTML, haga doble clic en tplSimple WebItem para mostrar la ventana de código. Seleccione el proceso tpSimple_ProcessTag. cuadro combinado superior y agregue el siguiente código:
Dim sHTM As String
Seleccionar nombre de etiqueta de caso
Caso " WC@TAGTITLE "
Contenido de etiqueta = Sesión ("Título")
Caso " WC@TAGMAIL "
sHTM = "Ingrese la dirección de correo electrónico:<br>"
sHTM = sHTM & "<tipo de entrada= 'texto'"
sHTM = sHTM & " nombre = 'Correo electrónico'><br>"
Contenido de etiqueta = sHTM
Caso " WC@TAGNAME "
sHTM = "Nombre:<br>"
sHTM = sHTM & "<tipo de entrada= 'texto'"
sHTM = sHTM & " nombre = 'Nombre'><br>"
Contenido de etiqueta = sHTM
End Select
devuelve el código HTML en el parámetro TagContent para reemplazar la etiqueta. Establezca un punto de interrupción en tplSimple. Agregue WriteTemple al procedimiento WebClass_Start y ejecute su aplicación. En el punto de interrupción, use F8 para recorrer el proyecto y ver el orden de los eventos. Verá que el procedimiento ProcessTag se llama tres veces: una para cada etiqueta en la plantilla. Lo realmente interesante es que, en tiempo de ejecución, el procedimiento utilizará HTML que generará un cuadro de texto en el navegador y reemplazará el correo electrónico. Las etiquetas de nombre
pueden depurar interactivamente el código de eventos del lado del servidor es una de las características más poderosas del desarrollo de aplicaciones WebClass con VB. En el desarrollo web VB5, VBScript en scripts ASP requiere mucho trabajo. interactivamente en scripts ASP; desafortunadamente, la única forma factible es error e intentarlo nuevamente. Sin embargo, en VB6, todo el código del lado del servidor se ejecuta en WebClass y puede usar el excelente entorno de diseño de VB para la depuración interactiva.
Conexión de un evento
El siguiente paso en esta sencilla aplicación. es agregar código de manejo de eventos para el botón Registrarme en el formulario. Regrese al diseñador WebClass de VB y haga clic en tplSimple WebItem. En el panel derecho, verá una lista de miembros HTML en la página y podrá asociar eventos con ellos. Haga clic derecho en la etiqueta Form1 y seleccione el elemento de menú Conectar a evento personalizado, y observe que junto al nombre del evento Form1 en la columna Destino, eche un vistazo rápido a la plantilla HTML (haga clic derecho en tplSimple y seleccione Editar plantilla HTML). Busque los miembros del formulario. Ahora tienen este aspecto
.
&WCE=RegisterMe&WCU>
SimpleReg.asp es un script de inicio especial de ActiveXDLL. El valor después del signo de interrogación indica que WebClass Item (WCI) es tplSimple, WebClass Event (WCE) es RegisterMe y WebClass URLData (WCU) está vacío. Cuando el usuario hace clic en el botón Registrarme en el navegador, esta línea activará el botón tplSimple_RegisterMe en la DLL del servidor ActiveX. De esta manera, la actividad del formulario está vinculada al evento del lado del servidor, pero puede establecer un hipervínculo. en el navegador para activar Eventos en el servidor Las WebClasses funcionan como magia para el desarrollo de aplicaciones web: extienden la programación basada en eventos de VB a aplicaciones basadas en navegador.
Haga doble clic en el evento RegisterMe en el panel izquierdo de VB Designer para mostrar el código. ventana Agregue el siguiente código al evento:
Si Len(Request.Form("Email")) = 0 Entonces.
Session("Titile") = "Por favor" & "¡Ingrese una dirección de correo electrónico!"
Sesión("Correo electrónico") = ""
Sesión("Nombre") = ""
Demás
Sesión("Título") = "Aquí está" y "¡tu entrada!"
Sesión("Correo electrónico") = Solicitud.Form("Correo electrónico")
Sesión("Nombre") = Solicitud.Form("Nombre")
Terminar si
TplSimple.WriteTemplate
Request.Form es una forma estándar de devolver datos desde una página del navegador. Establece algunas variables de sesión y vuelve a mostrar la misma página HTML. Establece un punto de interrupción en la instrucción If y ejecuta el proyecto. Ingresa una dirección de correo electrónico y un nombre. Haga clic en el botón Registrarme. Verá que el título se ha actualizado, pero el cuadro de texto está vacío. Esto se debe a que no ingresó los valores correspondientes al escribir la plantilla. proceso (Descargue el Listado 1 de DevX; consulte el cuadro Descargar código gratuito para obtener más detalles). Asigne un valor al cuadro de texto según la variable Sesión. Ejecute el proyecto y vea qué sucede.
Utilice ADO para acceder a los datos
. para almacenar y almacenar la suma de la base de datos. Método para obtener registros. Para simplificar, usamos Microsoft Acess 97 como nuestra base de datos. Cree una nueva base de datos con Acess en su directorio de origen y asígnele el nombre Register.mdb. , respectivamente Correo electrónico y Nombre, y guárdelos en el disco. Seleccione Aceptar cuando Acess le solicite crear un campo de índice único y coloque una copia de Register.mdb en el directorio raíz de su unidad C.
En el proyecto, agregue Microsoft ActiveX. Referencias de la biblioteca de objetos de datos, puede encontrarlas en Proyecto|Referencia.... Puede usar la biblioteca ADO versión 1.5 o 2.0. Si no tiene la biblioteca ADO instalada, puede descargarla del sitio de Microsoft: http:/. /www.microsoft.com/data Descargue el kit de herramientas de instalación MDAC2.0 desde /ado Cambie el código en el proceso tplSimple.RegisterMe (Descargue el Listado 2 de DevX; consulte el cuadro Descargar código gratuito para obtener más detalles)
. en el formulario en la variable Sesión, luego abra el conjunto de registros ADO y busque la dirección de correo electrónico (Descargue el Listado 3 de DevX).
Si no lo encuentra, agregará un nuevo registro. La función establece la cadena de conexión:
Función privada Connect() As String
'Devuelve una cadena de conexión ADO
Const kDB = "DBQ=c:register.mdb;"
Const kDrv = "Drive={Microsoft" & "Controlador de acceso (*.mdb)}"
Conectar = kDB y kDrv
Función final
Establezca un punto de interrupción en tplSimple_RegisterMe, ejecute el programa y vea cómo funciona el código de acceso a datos. Este sencillo ejemplo le muestra lo simple que es la programación en ADO. Recuerde configurarlo en su empresa. Cualquier aplicación "real" debe incluir manejo de errores. En términos generales, también utilizará el registro para guardar variables como la información de la cadena de conexión y deberá proporcionar una forma de actualizar registros y eliminar registros innecesarios.
Cuándo Al compilar el proyecto, sucederán dos cosas: como. cualquier proyecto ActiveX en VB, se generará un registro DLL ActiveX en la máquina de desarrollo. Lo segundo es: se generará una WebClass, el archivo de inicio ASP especial denominado por el nombre especificado por el atributo NameInURL. del archivo es: SimpleReg.asp. Mire el script en el Bloc de notas. Cuando el usuario ingresa la URL del archivo en el navegador, IIS crea una instancia de SimpleReg.wcSimple WebClass. Microsoft recomienda no cambiar este script ASP. En cualquier circunstancia,
desde la perspectiva del usuario, registrar la versión WebClass de la aplicación es similar a la serie mostrada en mayo de 1998. El código de esta serie es de hecho similar a la serie mostrada anteriormente, excepto que ahora todo el código está incluido en el archivo. WebClass y el archivo ASP iniciado no incluye ninguna información del usuario
Notas
Comparación de la aplicación antes y después, debe tener una comprensión consistente de cómo funciona WebClass Sin embargo, es posible que aún se sienta reacio a convertir inmediatamente su aplicación web en una WebClass. Convertir una aplicación lleva un tiempo considerable, pero debe hacerlo porque existen beneficios reales al hacerlo. Por ejemplo: WebClass le permite crear o ampliar aplicaciones de formas que antes no eran posibles
. Por supuesto, también es posible desarrollar aplicaciones web con VB5, pero tendrás que usar muchos pequeños trucos de programación para que el script ASP interactúe con la DLL de VB correctamente. de VBScript, no falta un verdadero entorno de programación basado en eventos que proporciona a VB una funcionalidad completa para el desarrollo web, y es algo bueno.