Dia de programador

November 12th, 2002 Comments Off on Dia de programador

Um dia muito divertido no trabalho. Depois de um longo tempo desenvolvendo aplicações web, usando ASP, tive que criar um ActiveX por causa de uma necessidade em alguns projetos que a empresa está desenvolvendo. Para isso voltei a usar o Delphi após um longo tempo sem utilizá-lo profissionalmente. Foi bom retornar a uma das minhas linguagens preferidas.

O problema em questão é bastante interessante. Parte do projeto envolve a utilização de um outro ActiveX dentro do que estou desenvolvendo. Embora eu esteja usando o Delphi 5, que possui um bom suporte à tecnologia em questão, alguns problemas ficaram evidentes de cara.

A primeira coisa que tive que resolver foi o roteamente das teclas aceleradoras para o ActiveX. O IE intercepta as mensagens de teclado, e se o ActiveX precisa de responder a alguns delas é necessário implementar uma interface adicional que traduza essas mensagens. O problema é bem documentado, mas eu ainda não o tinha enfrentado, já que desenvolvi poucos componentes ActiveX na minha carreira de programador.

O problema seguinte foi uma certa dependência do Delphi no loop de mensagens da aplicação. Como o ActiveX está contido em outra aplicação, tendo um loop de mensagens próprio e isolado, eu tive que recorrer a alguns atalhos para realizar algumas tarefas. Isso implicou em não usar alguns componentes próprios do Delphi que falhavam dentro do ActiveX.

Depois, foi a vez de ler parâmetros da página. Nessa área o Delphi não possui suporte pronto nenhum. Após uma certa pesquisa, descobri que era mais fácil do que parecia. Bastava implementar outra interface e usá-la para ler os parâmetros.

Um último problema, até agora sem solução, são os componentes que implementam as caixas de diálogo do Windows (como a de escolha de cores). Novamente a implementação do Delphi assume que elas estarão sendo usadas em uma aplicação e o resultado é que o Internet Explorer perde momentaneamente o foco após a invocação de uma caixa de diálogo. Pelas pesquisas que fiz, o problema só pode ser corrigido modificando-se o código de algumas bibliotecas do próprio Delphi com alguns efeitos colaterais. Ainda não decidi o que fazer.

No geral, um dia bem produtivo e agradável. Na verdade, é a existência desses problemas e a necessidade de resolvê-los é que torna a programação tão interessante. Sem essas dificuldades, as tarefas seria rotineiras e tediosas. Eu gosto da programação justamente pelos desafios que enfrento a cada dia.

Comments are closed.

What's this?

You are currently reading Dia de programador at Superfície Reflexiva.

meta