Olá, Internautas! Hoje vamos ver como executar um "user control" do Windows dentro do Internet Explorer. Para quem não sabe ainda o que é isso, por não ser muito usado, é uma programação desktop que pode ser executada no browser da máquina. Bem, existem restrições para esse tipo de software, primeiro porque só vai funcionar com o browser da Microsoft, e o segundo motivo é por ter acesso na máquina via browser, como se fosse desktop.

Portanto, é possível pegar os dados, gravar arquivos, acessar e escrever arquivos facilmente. Para acessar a camada de dados é necessário utilizar WebService, mas isso não é problema.

Requisitos:
  • Linguagem: C#.NET
  • Framework 2.0, 3.0, 3.5
  • Tipos de projeto relacionados: Web e Windows

O primeiro passo foi criar um projeto do tipo Class Library, conforme a figura 1. Depois criei um novo item chamado User Control, veja nas figuras 2 e 3.

alt

Figura 1

alt

Figura 2

alt

Figura 3

Esse "User Control" pode ser programado normalmente, como Windows Forms. O acesso na máquina é dado sem qualquer problema, a não ser uma coisa que precisa ser colocada antes, mas isso falarei mais à frente.

Todos os componentes de Windows Forms aparecem para ser usados sem qualquer problema:

alt

Figura 4


No "Load" do formulário, usei um método que pega os dados da placa de rede e do disco rígido. São números de seriais específicos. Por exemplo: "GetVolumeSerial("C")".

A execução para debug é muito simples, basta dar F5 que a tela em funcionamento aparecerá, e com os dados do computador, que falei e foi mostrado nos métodos anteriores:

alt

Figura 5

O passo seguinte é colocar esse controle junto a uma página web. Esse trabalho é simples e fácil, só é necessário prestar atenção em alguns detalhes importantes. Adicionei um projeto do tipo web junto à minha solução criada anteriormente.

Na página ASPX coloquei um código bem simples e fácil, na parte de HTML:

alt

No projeto Web criei uma pasta simples chamada "Controles", existe a necessidade de compilar o User Control e mandar para a pasta automaticamente. Para fazer isso, precisei colocar junto do Build uma cópia para o outro projeto:

alt

Figura 6

alt

Figura 7


Na figura 7 você pode ver, na aba Build Events, o código de cópia do projeto para o outro projeto e dentro da pasta controle.