Artigo Clube Delphi 59 - Migração de aplicativos

Artigo da Revista Clube Delphi Edição 59.

Esse artigo faz parte da revista Clube Delphi Edição 59. Clique aqui para ler todos os artigos desta edição

Migração de aplicações

Aprenda a processar units adaptando seu código para compilar em versões mais recentes do Delphi

 

Na maioria das vezes, a migração de aplicações escritas em uma versão anterior do Delphi para uma versão mais recente é tranqüila e quase sempre totalmente transparente, sem a necessidade de alterar ou adaptar qualquer tipo de código, bastando apenas recompilar o projeto.

No entanto, com o lançamento do Delphi 6, a Borland efetuou diversas modificações no que diz respeito ao tratamento de variants, com o principal objetivo de viabilizar a compatibilidade com aplicações escritas em Kylix (Linux). Todas as rotinas para o tratamento desse tipo de variável passaram a integrar uma nova unit, chamada variants. Obviamente as versões 7 e 2005 seguem o mesmo padrão, mantendo a compatibilidade com projetos feitos no Delphi 6 e 7.

Se você é como eu, ainda tem alguns projetos feitos em Delphi 5. Particularmente considero essa umas das melhores versões do Delphi. No entanto, alguns desenvolvedores de componentes estão deixando o suporte ao Delphi 5 de lado,o que força a migração para versões mais recentes do Delphi,quando for feito o upgrade desses componentes de terceiros.

A fim de facilitar a vida do desenvolvedor, criei um pequeno utilitário que varre as units em um diretório à procura de sinais de utilização de variants e, caso encontre, modifique a cláusula uses das units, incluindo a unit Variants,resolvendo assim o problema de quebra de compilação em novas versões do Delphi.

 

Dica:Você pode facilmente adaptar a lógica dessa aplicação para os mais variados fins,por exemplo, para adaptar units da VCL para VCL.NET, Win 32 para .NETetc., quando for migrar seus aplicativos.

 

Por que todo esse trabalho?

Alguns devem estar se perguntando: Por que escrever um utilitário como esse, se podemos simplesmente usar um GReplace ou outro utilitário de substituição e trocar todas as referências de uma unit comum, como por exemplo a unit SysUtils, substituindo-a por "SysUtils, Variants”." [...] continue lendo...

Artigos relacionados