Capítulo siete

Detalles de los proyectos y de las clases

Los diferentes proyectos que pueden realizarse dentro del ambiente de desarrollo de Visual Basic 5.0 tiene diferentes características entre ellos y entre las clases que contienen. Veamos detalles teóricos de estas características:

Los detalles que se verán se observan en el ambiente de Visual Basic 5. Para ver características particulares de un proyecto seleccione ProjectName Properties... del menú Project. Para ver las propiedades particulares de un módulo de clase vea la ventana de propiedades (F4) para cada módulo de clase.

Referencias: Artículos: "Simplify your support Classes" de la revista Visual Basic Programmer`s Journal de Enero 1998.

Características generales de la ventana de dialogo de Project Properties

Si observamos la imagen anterior podemos notar dos áreas que en este caso nos interesa recalcar en esta ocasión.

El Project Type nos dice el tipo de proyecto que estamos desarrollado en el cual podemos escoger entre Standard Exe, ActiveX Exe, ActiveX Dll y ActiveX Control. Al escoger en cada uno de ellos podemos observar algunas otras propiedades de esta ventana se habilitan y otras se deshabilitan presentando diferentes opciones de configurar el proyecto.

El la sección de Threading Model se pueden observar diferentes formas de configuración para el manejo de hilos de ejecución dentro del proyecto dependiendo del tipo de proyecto.

 

Standard EXE

Al tener este tipo de proyecto crearemos una aplicación stand-alone. Si observamos en la imagen anterior podemos ver que no se tiene ningún modelo de hilos de ejecución.

Si tenemos un módulo de clase en el proyecto, podemos observar las siguientes propiedades en la ventana de propiedades:

En este tipo de proyectos solo podemos dar un nombre al módulo de clase, no nos ofrece mas características debido a que es una aplicación stand-alone, no comparte nada, no es un servidor. Se utilizan las clases para tener más control sobre los objetos internos y para organizar y controlar bien nuestras reglas de negocio.

 

ActiveX EXE

Si seleccionamos que el tipo de proyecto, en la ventana de propiedades del proyecto, sea del tipo ActiveX Exe, el modelo de hilo de ejecución se habilita.

Al tener este tipo de proyecto las lista de propiedades para un módulo de clase se vería así:

Con respecto al tipo de proyecto Standard Exe tenemos aquí una propiedad más llamada Instancing el cual nos indica la forma de crear instancias de la clase fuera del proyecto y si es así como se comportara. Las opciones que se muestran son:

 

ActiveX DLL

Si seleccionamos que el tipo de proyecto, en la ventana de propiedades del proyecto, sea del tipo ActiveX Dll, el modelo de hilo de ejecución se habilita de la siguiente forma (disponible con el Service Pack 3):

Al tener este tipo de proyecto las lista de propiedades para un módulo de clase se vería así:

Con respecto a un proyecto de tipo ActiveX Exe, aquí solo tenemos 4 de las seis opciones para la propiedad de clase Instancing. Estos cuatro son los siguientes:

 

ActiveX Control

El modelo de hilo de la ventana de propiedades para este tipo de proyecto es igual al tipo de proyecto ActiveX DLL:

Ver arriba, ActiveX DLL, para detalles de los tipos de modelo de hilo Apartment Threaded y Single Threaded.

En este tipo de proyecto se habilita otra opción dentro de la ventana de propiedades del proyecto:

Esta opción habilita el licenciamiento para un proyecto que produce componentes ActiveX (servidores de automatización, controles de usuario o controles ActiveX). Solo se aplica a este tipo de proyecto. Habilitada esta opción, VB creará un archivo de licencia (*.vbl) que deberá ser registrada en la maquina del usuario para los componentes a ser usados en el ambiente de diseño. El programa SetUp Wizard construirá un programa setup que registrara apropiadamente la información en el *.vbl en la maquina del usuario final.

Al tener este tipo de proyecto las lista de propiedades para un módulo de clase se vería así:

Con respecto a un proyecto de tipo ActiveX Exe, aquí solo tenemos 2 de las seis opciones para la propiedad de clase Instancing. Estos dos son los siguientes: