VB .NET - Distribuindo aplicações Windows Forms (Smart Client)


Neste artigo eu procuro fazer algumas considerações de como distribuir sua aplicação Windows Forms levando em conta alguns cenários usando a tecnologia ClickOnce. Se este é o seu primeiro contato com o conceito de distribuição de aplicações Windows usando o ClickOnce leia o meu artigo : .NET 2.0 - Instalando sua aplicação com ClickOnce e VB 2005 - Criando uma aplicação Windows Completa V.

1- Distribuindo uma aplicação Windows Forms que usa um banco de dados do SQL Server Express Edition

Neste cenário temos uma aplicação Windows Forms isolada que usa um banco de dados, geralmente o SQL Server Express Edition.

A distribuição é feita de forma que o clientes acessam o servidor web via URL e fazem a instalação da aplicação completa e do banco de dados. Abaixo temos um esquema deste cenário:

Este cenário se aplica a distribuição de aplicações Windows Forms a diversos clientes. Exemplo:

Você é um desenvolvedor independente que cria aplicações usando o VB .NET e esta distribuindo a sua aplicação de controle de estoques que usa o banco de dados do SQL Server 2005 Express Edition, para clientes que a compraram. Você informa a URL do seu servidor web , onde esta localizada o pacote da aplicação gerado pelo ClickOnce, e o cliente acessa a URL e faz a instalação da aplicação.  Se o cliente não possuir programa SQL Server instalado o mesmo será instalado durante a instalação da aplicação.

Nota: Lembre-se que o SQL Server Express não é um banco de dados embutido como o Microsoft Access e seu cliente precisa do SQL Server instalado para gerenciar o banco de dados da sua aplicação.

Apenas para mostrar como o ClickOnce efetua esta atualização eu vou criar uma pequena aplicação Windows Forms usando os assistentes de configuração para Data Source.

1- Abra o Visual Basic 2008 Express Edition  e crie um novo projeto Windows Forms Application usando a linguagem Visual Basic com o nome de Estoque;

2- No menu Data selecione a opção Add New Data Source;

3- No assistente de configuração selecione a opção DataBase e clique em Next>

4- Ainda no assistente clique no botão New Connection;

5- Na próxima janela clique no botão Change para trocar a fonte de dados; Selecione : Microsoft SQL Server DataBase File e clique em OK;

6- Clique no botão Browse para selecionar o banco de dados; Escolha o banco de dados Northwind.mdf e confirme a inclusão do banco de dados no projeto;

7- Clique no botão Next> e selecione a tabela Products selecionando alguns campos;

Ao final você deverá ter incluído o banco de dados no projeto e criado um dataset tipado com o nome NorthwndDataSet.xsd conforme a figura abaixo:

Agora selecione o formulário form1.vb e clique na guia Data Sources; Você deverá ver o dataset dipado e a tabela Products. Altere a sua definição para Details e arraste a tabela para o formulário de forma criar os controles vinculados e a barra de navegação conforme a figura abaixo:

Após Salvar o seu projeto na janela Solution Explorer clique em My Project e a seguir na aba Publish para ver as opções de configuração do ClickOnce;

Vejamos os itens mais importantes:

a-) Clicando no botão Application Files... teremos os arquivos da aplicação:

b-) Em Prerequisits... veremos os pré-requisitos selecionados da aplicação:

Note que o SQL Server 2005 Express Edition SP2 esta selecionado e temos a opção Download prerequisits from de componente vendor´s web site;

c-) O botão Update ... abre a janela Application Updates que permite definir alguns parâmetros de atualização;

Note que você tem um botão chamado Publish Wizard ou Assistente de publicação que  permite configurar várias opções de publicação. O assistente também pode ser chamado pelo menu Build | Publish (Compilar | Publicar). Clicando no botão veremos a janela abaixo, onde podemos definir o local onde será publicada a aplicação e o modo como vamos efetuar isso:

Clicando em Next> teremos a janela onde podemos definir se a aplicação estará disponível on-line ou off-line ou ambos

O outro botão - Publish Now - irá publicar a aplicação.  Depois de executar o assistente uma vez, você pode clicar em Publish Now (Publicar agora) para publicar as atualizações fazendo isso será apresentada a seguinte tela, indicando os pré-requisitos da instalação e o botão Install para instalar a aplicação;

Como escolhemos a localização http://localhost/Estoque os arquivos serão copiados na pasta c:\inetpub\wwwroot\Estoque conforme a figura abaixo:

Por padrão, o Instalador vai aumentar o número da versão sempre que o aplicativo for implantado e cada versão receberá uma nova pasta com o número de versão maior correspondente.

A página Publish.htm é uma página da Web que contém o um script de cliente que faz a verificação de versão e mostra as mensagens apropriadas.

O Setup.exe é um executável Windows 32 que irá instalar o seu aplicativo e todos os componentes necessários, como o próprio .NET Framework e o MDAC 2.8.

O ClickOnce funciona como o padrão Updater Application Block, ou seja ,  uma aplicação que verifica por atualizações em seu servidor de origem.

Updater Application Block : UAB
Trata-se um conjunto de bibliotecas desenvolvida pela Microsoft com o objetivo de fornecer um padrão de desenvolvimento para uma aplicação atualizável. O resultado é termos uma aplicação que verifica por atualizações em seu servidor de origem sempre que é aberta, efetuando o download das atualizações e mantendo-se sempre em dia.

Além disso você pode configurar outros detalhes da sua aplicação como assinar o seu assembly atribuindo uma chave;

Além da tecnologia ClickOnce podemos instalar uma aplicação usando o template Setup, mas isso é assunto para outro artigo...

Eu sei , é apenas VB .NET, mas eu gosto...

João 8:49 Jesus respondeu: Eu não tenho demônio; antes honro a meu Pai, e vós me desonrais.

João 8:50 Eu não busco a minha glória; há quem a busque, e julgue.

João 8:51 Em verdade, em verdade vos digo que, se alguém guardar a minha palavra, nunca verá a morte.

             Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter


Veja os Destaques e novidades do SUPER DVD VB (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Veja mais sistemas completos para a plataforma .NET no Super DVD .NET , confira...

Quer aprender C# ??

Chegou o Super DVD C# com exclusivo material de suporte e vídeo aulas com curso básico sobre C#
 


Referências:


José Carlos Macoratti