FAQ sobre Borland C++ Builder


1. Al cambiar de ordenador o de versión de Builder me da un error de falta de paquetes .bpi
2. El ejecutable de mi programa no funciona si no está instalado Builder
3. Quiero hacer un "instalador" de mi programa
4. A pesar de que cambio cosas en el programa, a ejecutarlo de nuevo da la sensación de que no ha cambiado nada
5. Quiero usar un Form desarrollado en un proyecto en otro proyecto
6. En las pestañas de componentes no encuentro uno para lo que quiero hacer
6.1. Si uso componentes de terceras empresas, al cambiar de ordenador, el proyecto no funciona
6.2. El manual de un componente es para VisualBasic ¿cómo lo uso en Builder?
6.3. El manual de un componente es para Dephi ¿Cómo lo uso en Builder?
7. ¡COLABORA!

1. Al cambiar de ordenador o de versión de Builder me da un error de falta de paquetes .bpi

Se produce ese problema cuando se cambia de versión de Builder (Enterprise/Profesional/Personal). Para conseguir que el proyecto funcione de nuevo hay que cambiar la configuración del tratamiento de paquetes y del enlazador.

Sigue estos pasos:

  • Abre el proyecto y contesta "cancelar" a cada paquete que se te solicite.

  • En la barra de menú elige "Project"->"Options".

  • En la pestaña "Packages", desmarca "Build with runtime packages".

  • En la pestaña "Linker", desmarca "Use dynamic RTL".

  • Acepta y reconstruye el proyecto ("Project"->"Build"

2. El ejecutable de mi programa no funciona si no está instalado Builder

Se debe a que faltan las librerías de apoyo al ejecutable (.bpl,.dll, etc.). Una buena solución es configurar Builder para que incluya las librerías de apoyo en el propio ejecutable.

Sigue estos pasos:

  • Abre el proyecto y contesta "cancelar" a cada paquete que se te solicite.

  • En la barra de menú elige "Project"->"Options".

  • En la pestaña "Packages", desmarca "Build with runtime packages".

  • En la pestaña "Linker", desmarca "Use dynamic RTL".

  • Acepta y reconstruye el proyecto ("Project"->"Build")

3. Quiero hacer un "instalador" de mi programa

Para hacer un "instalador" que meta nuestro programa en una carpeta, cree un enlace en el menú "Inicio" de Windows, etc. se puede recurrir al programa "Install Shield" que viene con el CD de Builder.

También se puede usar el software gratuito "Inno Setup" (es el que se ha usado en SimSeny). Tienes una versión en la web de la asignatura "Diseño de Sistemas Informáticos Industriales".

4. A pesar de que cambio cosas en el programa, a ejecutarlo de nuevo da la sensación de que no ha cambiado nada

Posiblemente el compilador no se da cuenta de los cambios en el código. Lo mejor es forzar a que se recompile todo de nuevo.

En la barra de menú haz "Project"->"Build".

5. Quiero usar un Form desarrollado en un proyecto en otro proyecto

Cierra Builder y copia los ficheros que forman el formulario en el directorio con el proyecto dónde quieres meterlo. Serán 3 ficheros, por ejemplo, unit1.dfm, unit1.cpp y unit1.h.

Abre el proyecto destino y añade el .cpp al proyecto tal como lo harías con una librería (opción Add to project). Verifica que la propiedad Visible del form añadido esté a true para que se vea el formulario.

Si el Form utiliza componentes de terceros, se deberá configurar el nuevo proyecto para que localice las librerías. La mejor manera de enterderlo es que abras un proyecto y mires en "Project->Options->Directories" y compares con lo mismo en la otra plicación, te darás cuenta de cómo hay que hacerlo.

Hay otras formas más elaboradas de reutilizar formularios. Mira el libro recomendado en la asignatura.

6. En las pestañas de componentes no encuentro uno para lo que quiero hacer

Una carácterística que hace muy potente a entornos como Borland Builder, Borland Dephi, Microsoft VisualBasic y otros son la posibilidad de usar componentes de terceros.

La siguiente tabla incluye una selección de direcciones dónde localizar componentes. Se han seleccionado especialmente las orientadas al trabajo en nuestras asignaturas.

Table 1. Direcciones Internet dónde localizar componentes

DirecciónComentarios
http://www.iocomp.comActiveX, VCL,... Muchos componentes para procesos industriales. Versión de evaluación.
http://www.arrakis.es/~rporcar/VCL gratuitos. Información adicional en castellano. Club de forofos.
http://delphi.icm.edu.plRecopilatorio de componentes VCL y ActiveX, información y herramientas varias gratuitas. Incluyendo componentes para E/S.
http://www.lohninger.comComponentes VCL para gráficas, análisis matemáticos, estadísticos, gestión GIS, etc. Hay una versión gratuita reducida.
http://www.vclcomponents.comRecopilatorio de distintos tipos de componentes. VCL, ActiveX, ...
http://www.activex.comRecopilatorio de componentes ActiveX.
http://www.active-x.comRecopilatorio de componentes ActiveX.
http://www.lmd.deVarios componentes VCL. Versíon gratuita reducida.
http://www.tmssoftware.com/ActiveX, VCL,... Muchos componentes para procesos industriales y otros cometidos. No tienen versión de prueba
http://www.componentsource.comRecopilatorio de distintos tipos de componentes. VCL, ActiveX, ...
http://www.abaecker.deVCL,... Muchos componentes para procesos industriales. Versión de evaluación.
http://sourceforge.net/projects/giwComponentes GTK para instrumentación.
http://www.automatedsolutions.comComponentes de distintas tecnologías para HMI.
http://www.softwaretoolbox.comComponentes de distintas tecnologías para HMI. Versión de demo disponible.

6.1. Si uso componentes de terceras empresas, al cambiar de ordenador, el proyecto no funciona

Se deb procurar que los nuevos componentes se instalen en el mismo directorio en los dos ordenadores. La mejor opción es crear un directorio dentro del de Builder (por ejemplo, C:\Archivos de Programa\Borland\CBuilder\mis_cosas).

También se debe procurar instalar los componentes siempre en un nuevo "pakage" y no hacerlo en el que viene por defecto en Builder. En los distintos ordenadores usados para desarrollar el proyecto se deberá crear ese mismo paquete. Lo de los paquetes sale al ir al menú "Component->Install ..."

6.2. El manual de un componente es para VisualBasic ¿cómo lo uso en Builder?

Hay una equivalencia entre funciones. De momento no la he encontrado en Intenet, pero se puede ampliar información en http://bdn.borland.com sección componentes ActiveX.

La siguiente tabla puede ser de ayuda. Se irá ampliando según vaya haciendo falta en la asignatura.

Table 2. Equivalencia VB y Builder

Notación VBUso en Builder
nombre_1.nombre_2()nombre_1->nombre_2()
funcion(Double valor)double valor; valor = 3.9; funcion(&valor);
funcion(String nombre)funcion(wchar_t *) ...por ejemplo funcion(StringToOleStr("hola")
funcion(Long valor)funcion(long valor)
tipo BooleanUsar 0 para "falso" y "1" para verdadero

6.3. El manual de un componente es para Dephi ¿Cómo lo uso en Builder?

Cuando haga falta en la asignatura, añadiré la información.

7. ¡COLABORA!

Si tienes alguna sugerencia para mejorar y ampliar esta información, por favor, hazmela llegar al correo electrónico.