Ver Mensaje Individual
  #18  
Antiguo 07-08-2007
rolandoj rolandoj is offline
Miembro
 
Registrado: abr 2007
Posts: 395
Reputación: 18
rolandoj Va por buen camino
Smile Importantes aclaraciones

Hola a todos,
Bueno, la primera parte del proceso de migración; o sea convertir los fuentes para que se ejecuten en Delphi 2007, aunque con algunos que otros tropiezos adicionales, está casí lista; pero debo hacerles algunas aclaraciones útiles.

Siempre que he tenido que convertir de Delphi 4 a versiones superiores, el proceso había sido automático y fácil; pero ante la presión de las opiniones en contra, puesto que es la primera vez que tomo parte en un hilo de varios mensajes, consideré de elemental cortesía investigar en más detalle. y dado que hacía mucho tiempo que no había hecho una conversión, quise validar el
proceso, así que tomé los fuentes del caso y fuí a donde tenía disponible Delphi 5.

Efectivamente tal y como yo recordaba solo abrí el paquete de Delphi 4 en Delphi 5, este me preguntó que si quería actualizar, le dije que sí, y, a diferencia de Delphi 2007, Delphi 5 efectuó conversión.

Ahora bien, esta vez la analicé y esto es lo que encontré :

Delphi 5 renombra automáticamente los paquetes Delphi 4 a los nombres equivalentes en Delphi 5; es decir, esa versión si es capaz de renombrar.
Por otra parte, y como dice Al, Delphi 5 no convirtió a texto los Dfm; pero los interpretó automáticamente. Aquí podría decirse que cometí una ligereza, ya que como nunca había tenido problemas de conversión asumí que el Delphi cambiaba el formato de los Dfm y en realidad lo que hace es interpretar el formato.

Probé con Delphi 2007 sin convertir previamente los DFM, tan solo borrando los nombres de los paquetes propios de Delphi 4 de la clausula requires y también hizo la conversión correctamente; o sea, que como tambien dice Al, Convert.exe no es estrictamente necesario.

La conclusión que saco es que todo el problema se origina por un error en Delphi 2007, que a diferencia de versiones anteriores, no es capaz de renombrar correctamente (Y lo considero error porque versiones anteriores lo hace). Vale anotar que tengo hasta el Update 1; pero entiendo que hay un Update 2; quizás en este el problema se corrija.

Por otra parte, aunque me parece válido contar con un asistente para posibles inconsistencias, y muy lógico preguntar antes de renombrar para cubrir los casos de bibliotecas multiversiones y otros casos especiales, encuentro incluso muy fácil de programar, para un Ingeniero de desarrollo de CodeGear, lo de renombrar donde fuere necesario. Y es que tanto en paquetes como aplicaciones, cada unidad tiene su "path" completo, así que es fácil saber si es o no de CodeGear, y por tanto saber si puede o
no renombrarse; como también manejar los casos en que varias unidades se fundan en una, o una unidad se expanda a varias. Igualmente, dado que tienen la lista de todas las unidades, pueden saber si al renombrar una de ellos, el nuevo nombre (o nombres) entra en conflicto con un nombre existente en una unidad ajena, avisando en consecuencia.

En últimas, y como dije antes, en caso de error, al compilar es muy facil de determinar porque puede que una unidad nuestra tenga el mismo nombre de una nueva de Delphi; pero es casi imposible que tenga los mismos componentes y/o procedimientos.

Bueno, creo que con todo lo dicho en estos hilos se documenta el proceso básico y se ilustran las diversas posiciones acerca de la automatización. Solo me queda agradecerles a todos su apoyo, y pasar a a nuevos problemas de migración, donde espero contar con ustedes.
Responder Con Cita