Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Unhappy No se desinstala BDE en Delphi 2007 Update 3

Hola,

Alguién sabe como pueden desintalarse componentes en el update 3 de Delphi 2007 ?. El problema es que no funciona como se supone que debía hacerlo. Me explico:

He instalado el update 3 de Delphi 2007, después de lo cual estoy teniendo problemas porque necesito desinstalar el BDE y no me está dejando. Lo malo es que no puedo regresar a la versión anterior porque según leí, el Update 3 corrige un grave error del dbExpress con Oracle, y lo más seguro es que mi aplicación más tarde deba correr con Oracle

Lo que he hecho para tratar de desintalar es lo siguiente:

1. Como primer intento, traté de hacerlo desde Delphi con Component / Install Packages, y usando Remove sobre "CodeGear BDE DB Components". Esto aparentemente trabaja, porque lo retira de la lista; pero en realidad, el sistema sigue manteniendo el registro de los componentes BDE porque, aparentemente, quién los registra es otro paquete.

2. Como segundo intento, lo hice desde el instalador de Delphi, colocando con X roja todo lo que tiene que ver con BDE. El sistema no solo no los desinstaló, encima volvió a instalar todo.

3. Traté incluso de borrar las entradas relacionadas con los componentes en el registro de Windows y de quitar de los directorios Bin y Lib los archivos relacionados; pero aún así siguen apareciendo.

Por favor no me sugieran que cambie de versión de Delphi. Yo tengo una pésima opinión del Delphi 2007 y no trabajo con el por gusto sino por obligación.
Responder Con Cita
  #2  
Antiguo 08-02-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

Quieres desinstalar el motor del BDE o los componentes basados en BDE?

Por que si es el motor, no tiene desintalador. Aunque tal vez buscando en Google encuentres como deshacerte de él...

Si son los componentes, pues prueba desde el menú Components|Install Packages....

En la ventana resultante busca CodeGear BDE DB Components, los seleccionas y le das en el botón Remove...


Saludos...
Responder Con Cita
  #3  
Antiguo 08-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
No trabaja bien

Cita:
Empezado por maeyanes Ver Mensaje
Hola...

Quieres desinstalar el motor del BDE o los componentes basados en BDE?

Por que si es el motor, no tiene desintalador. Aunque tal vez buscando en Google encuentres como deshacerte de él...

Si son los componentes, pues prueba desde el menú Components|Install Packages....

En la ventana resultante busca CodeGear BDE DB Components, los seleccionas y le das en el botón Remove...


Saludos...
Hola,

Muchas gracias por la colaboración.

Respecto a lo primero, me interesa más que todo desinstalar los componentes. El motor BDE como tal no me es tan crítico y en últimas en ese sí sé como desinstalar completemente del registro de Windows, y desinstalar sus archivos.

Respecto a tú idea, como digo en mi primer mensaje, esa solución ya la intenté y aparentemente funciona; pero en realidad no trabaja bien.

La opción elimina los componentes de la lista de paquetes y operativamente parece que los hubiera retirado; pero el sistema en realidad retiene la definición de los componentes. Eso se puede apreciar al intentar registrar un componente con el mismo nombre. Al parecer, cuando se instalan, se efectúa en alguna parte un registro; pero no sé donde. Las busquedas en el registro de Windows, basadas en los nombre de componentes, no arrojan nada claro al respecto. De todas formas borré las referencies que encontré, y no funcionó.

Muchos saludos
Responder Con Cita
  #4  
Antiguo 09-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Question El bdertl100 tiene mucho que ver

Hola,

Con algunas pruebas, y algo deducción, creo haber avanzado un poco en el problema:

Lo que está ocurriendo es que el registro de los componentes bde se hace con una librería de tiempo de ejecución que no es desinstalada cuando se desinstala "CodeGear BDE DB Components" con el método visto.

Esa librería no se muestra dentro de los paquetes de tiempo de diseño por lo que no puede desinstalarse con el mismo método.

La librería en cuestión es bdertl100.bpl y está ubicada en System32.

Intenté borrarla y Delphi se me bloqueo. Ahora tengo la idea de reemplazarla por otra que no haga nada, en el supuesto de que esta librería no debería ser utilizada por Delphi, excepto si un proyecto usa BDE; y que el bloqueo se produjo porque hay una lista de paquetes internos que deberían existir, la cual intenta cargarla. Si esto no es así, alguién sabe como emularla ?

En principio suena bien; pero quiero minimizar riesgos. La librería está acompañada por un archivo jdbg y un XML. El XML se genera por Project\Options; pero como hago para generar el jdbg ?. Busqué en internet y encontre muchas referencias diciendo que son archivos que generan información de debug; pero nada acerca de como generarlos desde Delphi.
Alguién sabe algo respecto a esto ?
Responder Con Cita
  #5  
Antiguo 09-02-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Aun no entiendo el porque quieres "quitar" los componentes BDE, pero si así lo deseas lo puedes hacer desde

Cita:
Component-->Install Packages-->Quitas la marca (NO REMOVE) de Borland BDE DB components y listo, ya no deberias ver la paleta de BDE.
Pero insisto, no se porque quieres quitarlos, si no los necesitas, pues que mas da tenerlos ahí

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney

Última edición por egostar fecha: 09-02-2008 a las 04:02:35.
Responder Con Cita
  #6  
Antiguo 09-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Gracias; pero eso no es suficiente

Cita:
Empezado por egostar Ver Mensaje
Aun no entiendo el porque quieres "quitar" los componentes BDE, pero si así lo deseas lo puedes hacer desde



Pero insisto, no se porque quieres quitarlos, si no los necesitas, pues que mas da tenerlos ahí

Salud OS
Hola,

Gracias por responder; pero ese método no es suficiente. El sistema sigue manteniendo internamente la presencia de los componentes. Si lees con detalle mis notas previas en este hilo verás que ese fué el primer método que intenté; pero como ahí explico, solo desinstala "aparentemente". Sí, desaparecen de la paleta; pero no se desinstalan completamente porque el sistema sigue usandolos ya que los toma de un paquete diferente al que se desinstala y por tanto no deja reemplazarlos.

La razón de querer desinstalarlos es precisamente esa.
Responder Con Cita
  #7  
Antiguo 09-02-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Veamos, tomando lo que dices en tu primer post:

Cita:
Empezado por rolandoj Ver Mensaje
Alguién sabe como pueden desintalarse componentes en el update 3 de Delphi 2007 ?. El problema es que no funciona como se supone que debía hacerlo. Me explico:
Como se supone que deben de funcionar o mas bien que es lo que no funciona como quieres.

Cita:
Empezado por rolandoj Ver Mensaje
He instalado el update 3 de Delphi 2007, después de lo cual estoy teniendo problemas porque necesito desinstalar el BDE y no me está dejando. Lo malo es que no puedo regresar a la versión anterior porque según leí, el Update 3 corrige un grave error del dbExpress con Oracle, y lo más seguro es que mi aplicación más tarde deba correr con Oracle
Mi pregunta expresa fué, no entiendo porque quieres desinstalarlo, los usas o no los usas......

Cita:
Empezado por rolandoj Ver Mensaje
Lo que he hecho para tratar de desintalar es lo siguiente:

1. Como primer intento, traté de hacerlo desde Delphi con Component / Install Packages, y usando Remove sobre "CodeGear BDE DB Components". Esto aparentemente trabaja, porque lo retira de la lista; pero en realidad, el sistema sigue manteniendo el registro de los componentes BDE porque, aparentemente, quién los registra es otro paquete.
Yo he dicho (NO REMOVE), solo quitar la marca.

Cita:
Empezado por rolandoj Ver Mensaje
2. Como segundo intento, lo hice desde el instalador de Delphi, colocando con X roja todo lo que tiene que ver con BDE. El sistema no solo no los desinstaló, encima volvió a instalar todo.

3. Traté incluso de borrar las entradas relacionadas con los componentes en el registro de Windows y de quitar de los directorios Bin y Lib los archivos relacionados; pero aún así siguen apareciendo.
Sigo sin entender, para que quieres desinstalarlos......

Cita:
Empezado por rolandoj Ver Mensaje
Por favor no me sugieran que cambie de versión de Delphi. Yo tengo una pésima opinión del Delphi 2007 y no trabajo con el por gusto sino por obligación.
Ni siquiera habia pensado en esa opción, y si ya tienes una pésima opinión y además trabajas con ella por obligación, pues que te digo, lastimosamente tienes dos trabajos.

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #8  
Antiguo 09-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
La razón de ...

Hola,

Gracias de nuevo.

Respecto a desmarcar, para inhabilitarlo en la parte visual de diseño, incluso eso es suficiente; pero, no los desinstala. Cuando hablo de desinstalar me refiero a que no exista referencia de ellos en todo el sistema.

La razón de querer desinstalarlos es que necesito reemplazarlos por otros de igual nombre. Dicho en otras palabras, si uso el nombre de los componentes; pero con una funcionalidad diferente; o sea, por ejemplo, uso un TQuery, pero no el del BDE, y la alternativa de usarlos con otro nombre me representaría un enorme problema

Saludos
Responder Con Cita
  #9  
Antiguo 09-02-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Cita:
Empezado por rolandoj Ver Mensaje
Hola,


La razón de querer desinstalarlos es que necesito reemplazarlos por otros de igual nombre. Dicho en otras palabras, si uso el nombre de los componentes; pero con una funcionalidad diferente; o sea, por ejemplo, uso un TQuery, pero no el del BDE, y la alternativa de usarlos con otro nombre me representaría un enorme problema

Saludos

Va a ser más facil que renombres a las nuevas clases.
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #10  
Antiguo 10-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Importante avance y comentarios individuales para todos.

Hola a todos,

Agradezco la atención que han brindado al tema y los actualizo al respecto.

El problema definitivamente está, si no todo, si la mayor parte, alrededor de la librería bdertl100.bpl.

No he encontrado documentación seria de ella; pero, analizando el registro de Windows, hay muchas referencias a la misma. Era algo que se me había pasado inicialmente porque había buscado solo en HKLM, asumiendo que era una configuración general; pero es una configuración de usuario que aparece en varios partes de HKCU y, lógicamente, en HKEY_USERS.

Parte del problema creo que es porque aparece como librería dependiente en paquetes que, aparentemente, no la deberían usar. El caso más notorio es que aparece en la lista del paquete dbX100. Dado el prefijo dbX, debo creer que es parte de dbExpress; pero en tal caso, la gran pregunta es : Si se supone que dbX es el reemplazo de BDE, que hace el BDE como parte de dbx ?.

Bueno, eso es tema de otro hilo y lo abriré más tarde. Voy a realizar pruebas quitando poco a poco esas dependencias, y haciendo otras modificaciones en
el registro (como hacer que cargue bajo demanda). Les contaré los
resultados; pero si alguién sabe algo al respecto agradezco cualquier ayuda.

Unos comentarios individuales:

Maeyanes :

Olvide responder tú observación de que el BDE no tiene desinstalador. Se supone que se desinstala con el Instalador de Delphi, que cuenta con una opción para ello. Ahora, esa opción no me funcionó, hicistes el comentario porque tienes información de que definitivamente esa opción no funciona ?

Poliburro :

Por varias razones, no me es más facil renombrar. Aún si lo fuera, de todas formas haría todo lo posible por usar esta solución porque creo que la parte interesante de Ingeniería es lograr reemplazar las originales.

egostar :

Se me había olvidado agradecerte el apoyo respecto a tener que usar Delphi 2007. Yo soy un gran fanático de Delphi, y he usado ininterrumpidamente casi toda la línea, desde que empecé con Turbo Pascal 3.0 para DOS, a mediados de los 80s, hasta llegar a Delphi 7. Dicho eso, entenderás que me haya sido impactante encontrarme con algo tan lleno de problemas como Delphi 2007, no entiendo como se las arreglaron para dañar tanto a un producto tan bueno.
Responder Con Cita
  #11  
Antiguo 10-02-2008
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Smile

¡Hola Rolando!

Me permito hacer algunas observaciones aquí, antes de continuar en el otro hilo.

La naturaleza de las dependencias indirectas entre paquetes no es exclusiva de Delphi 2007, existe desde las primeras versiones de Delphi y obedece más que nada a la forma en que Windows gestiona las DLLs (recordar que un .bpl es, en esencia, una DLL).

dbExpress no es precisamente un reemplazo a la BDE, sino una alternativa. Pero es claro que ya nadie recomienda usar BDE. En lo personal llevo algún tiempo utilizando dbExpress porque estoy plenamente convencido de su superioridad respecto a otros caminos de datos, aunque con Delphi 2007 (RAD Studio) apenas iniciaré dentro de un par de semanas (tendré oportunidad de evaluar qué tan mejorado o “dañado”, como tú dices, está el producto).

Como comenté en el otro hilo, al parecer el paquete de dbExpress se encadenó al paquete de BDE. Pero esto no tiene que representar ningún problema, ya que sólo afecta (si es que se le puede llamar "afectar") al entorno de Delphi pero no a tus aplicaciones compiladas.

Por otro lado, creo que usar nombres existentes para nuevas clases de objetos es una mala práctica, lo digo con todo respeto. En el único caso donde lo veo válido es cuando se trata de clases interpuestas (un buen truco difundido por Ian Marteens en uno de sus blogs). Si creas nuevas clases de componentes, sea o no para instalar en la paleta, por lo general es mejor que les des nombres que no tengan conflicto con otros componentes. Francamente no visualizo ninguna justificación seria para usar los mismos nombres. Si es porque tienes cientos o miles de archivos fuentes con referencias a esos nombres, deberías emplear una utilidad de reemplazo masivo. ¿Podrías comentarnos qué te motiva a darle a tus nuevas clases los mismos nombres que ya tienen algunos componentes nativos?

Finalmente te recomiendo usar el término biblioteca en lugar de librería (http://www.clubdelphi.com/foros/showthread.php?t=52131).

Ahora me paso al otro hilo.

Un abrazo textil.

Al González.
Responder Con Cita
  #12  
Antiguo 10-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Smile Aparentemente solucionado. Detalles por venir

Hola a todos,

Agradezco toda la colaboración prestada.

Les comentó que aparentemente he resuelto el problema.

Digo aparentemente porque ya logré que permitiera instalar el paquete que reemplaza a la unidad dbTables, y he conseguído recompilar las aplicaciones originales, practicamente sin cambiar nada en los fuentes de las mismas (solo agregar la unidad Webbroker en un DLL). Igualmente he verificado que los componentes que están tomando los programas son los nuevos y no los del BDE. Falta probar a fondo, ya ejecutando. Eso tomará algunos días; pero he querido tenerlos al tanto.

En cuanto me desocupe lo suficiente les daré detalles específicos. Por ahora, solo les diré que el problema era la librería BDERtl100.bpl. Esta librería es la que registra a dbTables; luego hay que retirarla para lograr instalar una nueva versión. Lo que estaba ocurriendo es que hay una serie de paquetes que dependen de ella y la cargan automáticamente, así que fué necesario
inhabilitarlos a todos.
Responder Con Cita
  #13  
Antiguo 10-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Smile Gracias. Te explicaré más tarde

Cita:
Empezado por Al González Ver Mensaje
¡Hola Rolando!

Me permito hacer algunas observaciones aquí, antes de continuar en el otro hilo.

La naturaleza de las dependencias indirectas entre paquetes no es exclusiva de Delphi 2007, existe desde las primeras versiones de Delphi y obedece más que nada a la forma en que Windows gestiona las DLLs (recordar que un .bpl es, en esencia, una DLL).

dbExpress no es precisamente un reemplazo a la BDE, sino una alternativa. Pero es claro que ya nadie recomienda usar BDE. En lo personal llevo algún tiempo utilizando dbExpress porque estoy plenamente convencido de su superioridad respecto a otros caminos de datos, aunque con Delphi 2007 (RAD Studio) apenas iniciaré dentro de un par de semanas (tendré oportunidad de evaluar qué tan mejorado o “dañado”, como tú dices, está el producto).

Como comenté en el otro hilo, al parecer el paquete de dbExpress se encadenó al paquete de BDE. Pero esto no tiene que representar ningún problema, ya que sólo afecta (si es que se le puede llamar "afectar") al entorno de Delphi pero no a tus aplicaciones compiladas.

Por otro lado, creo que usar nombres existentes para nuevas clases de objetos es una mala práctica, lo digo con todo respeto. En el único caso donde lo veo válido es cuando se trata de clases interpuestas (un buen truco difundido por Ian Marteens en uno de sus blogs). Si creas nuevas clases de componentes, sea o no para instalar en la paleta, por lo general es mejor que les des nombres que no tengan conflicto con otros componentes. Francamente no visualizo ninguna justificación seria para usar los mismos nombres. Si es porque tienes cientos o miles de archivos fuentes con referencias a esos nombres, deberías emplear una utilidad de reemplazo masivo. ¿Podrías comentarnos qué te motiva a darle a tus nuevas clases los mismos nombres que ya tienen algunos componentes nativos?

Finalmente te recomiendo usar el término biblioteca en lugar de librería (http://www.clubdelphi.com/foros/showthread.php?t=52131).

Ahora me paso al otro hilo.

Un abrazo textil.

Al González.
Hola Al,

Muchas gracias por los comentarios. Te explicaré en todo detalle porque quería reemplazar los originales, y porque al hacerlo tengo grandes ventajas frente al reemplazo masivo que planteas, aunque creo que leyendo el otro hilo, ya te imaginarás las razones que ahora no alcanzas a ver.

Lo haré en los próximos días. Ahora necesito concentrarme en probar las aplicaciones.
Responder Con Cita
  #14  
Antiguo 21-02-2008
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Poder: 18
rolandoj Va por buen camino
Actualizando el hilo

Hola a todos,

Para resumir el estado del hilo, aunque pude desinstalar y reemplazar el BDE,aparentemente trabajando bien, en una de las aplicaciones se presentó un conflicto con un paquete, que en teoría no debía usar el BDE; pero que lo usa. Como me era crítico y no pude solucionarlo, me tocó sacrificar la portabilidad y renombrar clases. Aunque esto funcionó, es una mala solución que me genera bastantes problemas.

Ahora, una disculpa para Al.

No he podido abrir el nuevo hilo para explicar en detalle porque me era tan importante lograr el reemplazo de BDE, debido a que se me han seguído presentando una cantidad de problemas con la herramienta, que no me han dejado tiempo libre.

Al más crítico le acabo de abrir un hilo. En ese creo, y espero, que el problema si sea de manejo mío, porque no tengo mucha experiencia con dbExpress. Pueden verlo en el siguiente hilo:

http://www.clubdelphi.com/foros/show...562#post267562
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Nuevo update para delphi 2007 / delphi .net avmm2004 Noticias 0 18-12-2007 20:19:25
Delphi 2007 Update 1 disponible. Epachsoft Noticias 30 17-09-2007 12:26:33
Ahora si, Update 2 para D2007 y C++ Builder 2007 jhonny Noticias 0 11-08-2007 02:38:58
Update 2 para Delphi 2007 jhonny Noticias 2 02-08-2007 06:00:21
Lanzamiento Delphi 2007, PHP y JBuilder 2007 R2 Santiago - Chile Andreano Noticias 4 14-05-2007 09:25:23


La franja horaria es GMT +2. Ahora son las 20:05:56.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi