4 de dezembro de 2007

Criando programas portáteis

EDIT: Nesse post eu acabei esquecendo de por os créditos do criador do post e só percebi recentemente, os links são esse e esse, e tenho que dizer que o kra mandou bem nos dois posts co uma explicação clara e funcional que eu mesmo já usei aqui e funcionou bem.



Fugindo um pouco ao formato do site, resolvi escrever um tutorial em algumas partes sobre como transformar uma aplicação normal em uma aplicação portátil. Continue lendo para descobrir como…



Como um entusiasta de aplicativos portáteis, comecei a escrever meus programas da forma mais portátil possível. Até aí nada demais. Só que na maioria das vezes eu utilizo programas de terceiros, que na maioria das vezes não são portáteis por n motivos. O mais comum é o programa depender das bibliotecas ou ambientes como java ou .net, para executarem corretamente. Fora isso os aplicativos também costumam guardar informações no registro do Windows ou na pasta do perfil do usuário.



Então, qual a saída para tornar um programa que você não pode alterar em portátil?

A resposta a esta pergunta está na virtualização de aplicação. Observe que este tipo de virtualização, não tem nada a ver com a emulação de hardware como a feita pelo VMware ou o Virtual PC.



A idéia básica por trás da virtualização de aplicação é incorporar todos os arquivos e simular os acessos ao registro necessários para a perfeita execução do aplicativo. Talvez você já tenha visto para baixar em algum site versões portáteis de programas renomados como o Adobe Photoshop, Adobe Flash CS3, Corel X3 entre outros.

Algumas empresas já desenvolveram aplicativos que fazem esta virtualização.

O processo na verdade é bem simples. Primeiro você deve tirar uma “foto” (snapshot) do sistema, instalar o programa que você quer transformar em portátil e depois comparar com o snapshot inicial para saber quais arquivos e entradas de registro foram adicionados ao sistema.

Com isso, você criará um único executável, com tudo que seu aplicativo precisa para rodar.



Agora, como usar o Microsoft Virtual PC e o Thinstall



O primeiro passo para a criação de um programa portátil é ter um sistema operacional recentemente instalado. Isto é necessário pois os programas de instalação geralmente verificam as versões das bibliotecas instaladas em seu computador, e caso a biblioteca encontrada em seu computador seja uma versão mais nova, o programa de instalação não irá copiá-la para seu micro e é provável que seu programa não funcione adequadamente.

Para contornar este problema e sempre termos a mão uma instalação novinha do Windows, podemos usar um programa de virtualização como o VMWare ou o Microsoft Virtual PC.

Estes programas permitem que você instale um sistema operacional dentro de uma máquina virtual rodando dentro de seu computador. E quando você quiser usá-lo, é só rodar o programa como qualquer outro aplicativo.



Para o nosso tutorial utilizaremos o programa Microsoft Virtual PC, que pode ser baixado aqui.



Não vou me ater aos detalhes da instalação do programa e do sistema operacional, já que no forum do Baboo há uma explicação bem completa. Confira o artigo aqui.



Só vai ficar faltando um detalhe que não está descrito no artigo, que é a instalação do Virtual Machine Additions. Para instalá-lo é só inicializar a máquina virtual e clicar no menu Action e depois em Install or Update Virtual Machine Additions e a instalação terá início. Como todo bom programa Windows, é só ir confirmando até o final da instalação. Após a instalação, você poderá usar uma pasta compartilhada entre seu computador de verdade e o computador virtual.

Para configurar a pasta compartilhada, clique com o botão direito sobre o ícone e selecione a pasta de seu computador para compartilhar com a máquina virtual.



Pronto! Agora você possui uma instalação novinha em folha do Windows.



Com isso podemos iniciar criação de nosso programa portátil.



Baixe o Thinstall e faça o procedimento de instalação normalmente. Após a instalação, execute o programa Setup Capture (que deve estar instalado em sua máquna virtual), clique em Start e selecione o disco onde você vai instalar o programa que quer transformar em portátil.



Depois que o programa terminar de verificar os arquivos e o registro de sua máquina virtual, você pode começar a instalação do programa.

Após a conclusão da instalação, clique em Post Install Scan. Agora selecione uma pasta para que o thinstall copie os arquivos que foram instalados.



Vá até a pasta que você indicou no passo anterior e execute o arquivo build.bat. Ele irá criar uma pasta chamada bin com o seu programa em versão portátil.

Existem algumas configurações adicionais que podem ser feitas no arquivo package.ini. Para maiores detalhes, dê uma consultada no help.



Fiz alguns testes com programas que utilizam até o framework .Net, e eles funcionaram perfeitamente.

2 comentários:

Bruno@rno disse...

Parabéns pelo tutorial,foi o melhor e mais fácil que eu já vi!

Abraços...

brazucadekimono disse...

obrigado, mas esse post eu copiei de um blog mas agora é que percebi a falta dos créditos que eu deveria ter colocado no topo do post.