Delphi - Deploy - Distribuição de aplicações
Distribuir uma aplicação para um ambiente diferente do desenvolvimento algumas vezes pode ser uma dor de cabeça, ainda mais se a aplicação é complexa e usa muitos componentes de terceiros. Outra situação que iremos abordar aqui, é sobre como resolver problemas de aplicações que foram desenvolvidas originalmente em uma plataforma e foram migrados para outra, compilam, mas não executam.
Para fazer isso é muito "simples", porém, pode ser um pouco trabalhoso.
Vamos começar então...
1. Verificando as DLLs utilizadas (apenas windows).
Para verificar as DLLs utilizadas pelo seu executável, usamos o utilitário ListDLLs distribuído pela própria Microsoft.
2. Resolvendo problemas de inicialização.
Ao distribuir a aplicação ou tentar executa-la em uma outra plataforma, podemos nos deparar com este problema, que basicamente faz a aplicação não abrir e não exibir nenhum erro, dificultando assim, o trabalho do programador.
2.1 Entendendo o problema.
Quando uma aplicação não inicia, podemos colocar um breakpoint na primeira linha do projeto e veremos que, em tempo de debug nem chegará nesta linha, por que? Porque a aplicação está passando por problemas antes, e a primeira linha na verdade não é ali, é no inicialization de todas as units que foram compiladas.
2.2 Resolvendo o problema.
Em tempo de debug resolver este problema é simples, pois ocorrera uma exceção, mas quando isto não é possível precisamos brincar um pouco com as suas units.
Para fazer isso é muito "simples", porém, pode ser um pouco trabalhoso.
Vamos começar então...
1. Verificando as DLLs utilizadas (apenas windows).
Para verificar as DLLs utilizadas pelo seu executável, usamos o utilitário ListDLLs distribuído pela própria Microsoft.
2. Resolvendo problemas de inicialização.
Ao distribuir a aplicação ou tentar executa-la em uma outra plataforma, podemos nos deparar com este problema, que basicamente faz a aplicação não abrir e não exibir nenhum erro, dificultando assim, o trabalho do programador.
2.1 Entendendo o problema.
Quando uma aplicação não inicia, podemos colocar um breakpoint na primeira linha do projeto e veremos que, em tempo de debug nem chegará nesta linha, por que? Porque a aplicação está passando por problemas antes, e a primeira linha na verdade não é ali, é no inicialization de todas as units que foram compiladas.
2.2 Resolvendo o problema.
Em tempo de debug resolver este problema é simples, pois ocorrera uma exceção, mas quando isto não é possível precisamos brincar um pouco com as suas units.
- Defina uma nova pasta para suas DCUs.
- Realize um build do seu projeto.
- Crie um novo projeto.
- Pegue todas as DCUs da nova pasta e coloque na uses do seu novo projeto.
- Você pode fazer um dir *.dcu no prompt e mudar o .dcu por uma virgula fazendo um replace all na própria IDE do Delphi.
Muito bem, você tem alguma outra dica? Sinta-se a vontade para comentar.
Comentários
Postar um comentário