Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 19-04-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.610
Poder: 32
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
Hola.

Casi siempre que encuentro en Delphi algún defecto incómodo (es de esperarse que existan al ser una herramienta de programación tan vasta), como el que explicas, y tal defecto me impide conseguir el objetivo que tengo trazado en el proyecto en cuestión, busco la manera de solventarlo.

Primero trato de averiguar si ya existe una aceptación oficial del mismo por parte del fabricante, con su respectivo parche o solución alternativa.

De no encontrar solución hecha que me satisfaga, estudio el código fuente de la VCL procurando descubrir la causa (a veces de todas formas hago esto para conocer los detalles del asunto).

Ocasionalmente encuentro la razón del fallo, pero también me ha pasado que llego hasta donde el código fuente transfiere el control a una DLL de la que no hay código fuente disponible. Dependiendo de la calidad y claridad de los datos obtenidos, elaboro algún tipo de solución, que a veces resulta elegante y en otros casos una auténtica chapuza.

El caso por el que uno cruza los dedos es cuando el defecto en cuestión se localiza en el código fuente de un método virtual (o mensaje), tal método no hace referencia a elementos privados para los cuales no haya cuando menos acceso protegido (clásicos campos "FOnlyForMyEyes") y la clase a la que pertenece dicho método puede ser sustituida para cualquier elemento que haga uso de ella. Cuando es así, puede derivarse una clase hija redefiniendo el método en cuestión, aplicando en él el parche o código que ayude a evitar el defecto.

Pero también hay situaciones donde el problema reside en un método estático o función suelta, o el método es virtual y por lo tanto redefinible pero hace montones de referencias a elementos, permítanme la expresión, ultraprivados, y eso complica aplicar un parche sin modificar directamente el código fuente. De cualquier manera, cada caso tiene sus particularidades.

Te recomiendo buscar en QualityCentral si este error ha sido ya reportado, en qué estado se encuentra y qué soluciones hay. Y, cuando así prefieras también, estudiar la clase TFmtBCDField, valiéndote del propio depurador de Delphi además del código fuente de la VCL, para tratar de encontrar la causa del problema y con ello ver si es posible implementar una solución.

Un saludo.

Al González.
Responder Con Cita
 



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
Ayuda con 'range check error' drykea Varios 2 20-02-2009 16:36:39
error xsqlda index out of range en ventana login ayuda !!!!!! manueltp Firebird e Interbase 7 16-01-2009 04:03:12
Ayuda [ERROR]XSQLDA index out of range ??? ManuelPerez Varios 1 14-03-2008 17:31:22
Number is out of range jlalvarez Conexión con bases de datos 4 21-06-2007 18:01:13
Number is out of range (TTABLE) mmateo25v Conexión con bases de datos 2 02-08-2006 13:29:01


La franja horaria es GMT +2. Ahora son las 09:57:13.


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