ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 1 MONITORAÇÃO REMOTA DE DRIVES Utilizando a Internet como plataforma Luiz Celso Mertens Curso de Especialização em Desenvolvimento de Aplicações Web Instituto Catarinense de Pós-Graduação Frank Juergen Knaesel Professor de XML Instituto Catarinense de Pós-Graduação Resumo Uma nova geração de negócios está sendo criada com a expansão da Internet. A Internet deixou de ser apenas uma rede científica para tornar-se uma alavanca para novos negócios e serviços. A Internet possibilitou a conexão dos computadores e lhes permitiu a troca de informações. Este estudo tem por objetivo demonstrar uma solução prática utilizando a internet para monitoração remota de um inversor de freqüência. Assim a prestação de serviços torna-se mais rápida, eficaz e tem um custo menor para o cliente e o fornecedor (WEG). São enfocados os principais aspectos da aplicação e as ferramentas envolvidas. Palavras-chave: Monitoração remota – Aplicação web – Drive – Inversor de freqüência Abstract A new business generation is being created with the expansion of the Internet. Internet is not only a scientific network, it is a lever to new business and services. The Internet allowed the computer connections and the information exchange. The main objective of this article is the demonstration of a practical solution using the Internet to monitor a frequency inverter remotely. So the service becomes faster, effective and has a lower cost for the customer and for the supplier (WEG). The main aspects of the application and the involved tools are focused in the article. Keywords: Remote monitoring – Web application – Drive – Frequency inverter 1. INTRODUÇÃO O mundo está vivendo um momento de desenvolvimento extremamente acelerado, com freqüentes lançamentos de novos produtos e a expansão dos mercados de uma forma nunca antes vista, mediante o evento da globalização. Hoje os competidores não são mais necessariamente de uma mesma região, nem tampouco do mesmo país. O competidor pode ser uma empresa da qual nunca se ouviu falar. O mercado mudou o conceito de produto, hoje ele se posiciona melhor como solução, ou seja, o cliente não quer somente comprar um produto, mas ele deseja uma solução adequada ao seu problema. 1 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 2 Como permanecer firme no mercado em um cenário assim? A resposta encontra-se nos serviços, além de atributos indispensáveis, como qualidade e confiabilidade, sem os quais a empresa nem pode permanecer ativa. “À medida que o ritmo de mudanças se acelera, as empresas não podem mais confiar em suas antigas práticas de negócios para manter a prosperidade” (KOTLER, 2001, p. 17). Como os mercados estão em constante evolução, tornando-se mais exigentes em relação à qualidade, serviços e prazos, faz-se necessário alterar a estratégia para continuar na liderança do mercado, ou até mesmo para sobreviver nele. Se os clientes apenas comprassem produtos e não se importassem com serviços e benefícios adicionais e se todos os produtos de todas as categorias fossem iguais, todos os mercados dependeriam apenas de preço e todas as empresas teriam que aceitar o preço estabelecido pelo mercado (KOTLER, 2001, p. 177). Uma das maneiras de alcançar uma vantagem competitiva é fornecer mais valor que seus concorrentes e acrescentar benefícios que tornem o produto mais atraente. “A Internet está mudando o conceito das aplicações. Estamos nos movendo em direção à computação universal e em direção aos serviços eletrônicos” (AMOR, 2000, p. XXVII). Para aproveitar o tremendo poder de comunicação, completamente sem fronteiras da Internet, e para agregar valor aos seus clientes, a WEG iniciou o desenvolvimento de uma aplicação utilizando a Internet para trafegar as informações dos equipamentos, o que é oportuno e adequado dentro desta visão da Internet como agente de mudanças. Neste estudo discute-se uma solução prática da utilização da Internet na área de prestação de serviços para uma empresa fabricante de inversores de freqüência, a WEG. Monitorar remotamente um inversor de freqüência utilizando a Internet torna-se um serviço rápido e bastante eficaz, além do custo ser reduzido em relação à forma tradicional, de enviar um técnico ao local. Como controlar um drive remotamente? Como acessar suas funções? Como visualizar e alterar seus parâmetros? Alguns clientes apresentam dificuldades na parametrização dos equipamentos. Ajudar o cliente a parametrizar corretamente o drive é uma maneira de conquistar o cliente, principalmente fornecendo este suporte técnico gratuitamente por uma equipe treinada. Com isto consegue-se fortalecer o relacionamento nos negócios com os clientes. É apresentado o desenvolvimento da aplicação web baseado em servidor, a qual extrai informações dinâmicas do inversor de freqüência e disponibiliza estas informações em navegadores, por exemplo, no navegador do cliente e da equipe de atendimento do teleserviços da empresa. Esta aplicação web foi desenvolvida utilizando principalmente a linguagem Visual Basic, usando uma tecnologia especial denominada aplicação IIS. Uma aplicação IIS é um tipo de projeto criado pelo Visual Basic para uso específico na web. Esta aplicação é executada em um servidor web, sob o Internet Information Server da Microsoft, o qual disponibiliza as informações do inversor em páginas HTML. São enfocados aspectos gerais da solução e não detalhes de programação. Inicialmente serão apresentados os conceitos de drive e uma descrição do inversor de freqüência. A aplicação web foi desenvolvida para se comunicar com o inversor de freqüência. A seguir o estudo estará focado no desenvolvimento de software, definindo-se inicialmente a diferença entre aplicação web e páginas estáticas HTML. Apresentam-se então 2 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 3 as razões para o desenvolvimento do software na linguagem Visual Basic e descreve-se o tipo de aplicação web utilizada, que é a aplicação IIS do Visual Basic. Nesta descrição inclui-se a definição de webclass, seu funcionamento e a estrutura da aplicação IIS. A seguir é apresentada a tecnologia ADO utilizada para acessar a base de dados do software em linguagem XML, evidenciando-se alguns aspectos desta linguagem. Em seguida serão examinados o servidor web e suas versões disponíveis para as várias versões do software Windows. O servidor web hospeda a aplicação desenvolvida. No final serão analisados aspectos gerais do funcionamento dos menus do software. 2. DRIVE Drive é um equipamento para utilização em aplicações industriais nos mais variados segmentos. Os drives são divididos em diversas famílias, por exemplo, inversores de freqüência, soft-starters e servoconversores. As soft-starters são chaves de partida estática projetadas para acelerar e desacelerar e proteger motores elétricos de indução trifásicos. Os inversores de freqüência são equipamentos destinados a controlar e variar a velocidade de motores elétricos de indução trifásicos. Os servoconversores são equipamentos para utilização em aplicações industriais onde se necessita elevada dinâmica, controle de torque, robustez, precisão de velocidade e posicionamento contribuindo para o aumento da qualidade e produtividade. 3. INVERSOR DE FREQÜÊNCIA Um parâmetro do inversor de freqüência é um valor de leitura ou escrita, através do qual o usuário pode ler ou programar valores que mostrem, sintonizem ou adeqüem o comportamento do inversor e motor em uma determinada aplicação. Exemplos simples de parâmetros: parâmetro de leitura P003 é a corrente consumida pelo motor; parâmetro programável P121 é a velocidade de giro do motor, quando comandado pelo teclado (referência de velocidade, valor de freqüência). Deve-se configurar o endereço do inversor na rede de drives, podendo ser de 01 até 30. Existe um parâmetro que armazena o endereço, podendo ser visualizado ou alterado. O inversor utiliza a interface serial RS-232 para comunicação serial e o protocolo é o WEG Bus, protocolo proprietário da WEG. A comunicação serial é feita somente com o inversor de freqüência modelo CFW-09. 4. APLICAÇÃO WEB De modo geral, um site da web fornece páginas estáticas HTML aos usuários. Cada página é uma resposta genérica e padrão à uma solicitação. Uma aplicação web é diferente de um site web. Uma aplicação web fornece informação dinâmica, não arquivos HTML estáticos. Por exemplo, a aplicação lê, quando 3 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 4 necessário, informações armazenadas em um servidor de banco de dados. Uma aplicação web não só fornece informação, como também a aceita e responde às suas ações com uma resposta específica, tornando as páginas web mais flexíveis e customizáveis. Este projeto é uma aplicação web justamente por oferecer a possibilidade do usuário escolher os parâmetros que deseja monitorar. 5. POR QUE ESCREVER UMA APLICAÇÃO WEB EM VISUAL BASIC Diversas razões levaram a escrever esta aplicação web usando Visual Basic. Velocidade – o programa em Visual Basic é compilado, assim o programa fornece mais velocidade para o código no servidor web que um programa interpretado linha a linha. Tamanho das variáveis – como a aplicação IIS usa tipos de variáveis que são nativas no Visual Basic, o VBScript por exemplo usa apenas variáveis do tipo variant, que devido ao seu tamanho e necessidade de checar subtipos de variáveis, normalmente executam um pouco mais lentamente e em alguns casos muito mais lentamente que tipos de dados primitivos. Segurança – como o programa é compilado, ninguém pode ver o código da aplicação. Familiaridade com a linguagem – com exceção das informações apresentadas ao usuário em HTML, todo o código do aplicativo é desenvolvido em Visual Basic, o qual é uma linguagem já familiarizada para os programadores da empresa WEG. Desta forma escreve-se um código melhor e mais rápido. Depurador – a possibilidade de ver e alterar os conteúdos das variáveis, reescrever código em tempo de execução, mover o ponteiro de execução e ir passo a passo pelo código do projeto é uma grande vantagem durante os testes. O que torna o desenvolvimento para web mais robusto. 6. SERVIDOR WEB A web popularizou a idéia de uma unidade central inteligente de processamento – o servidor web. O servidor web é um software instalado em um computador para atender a pedidos de arquivos feitos pelos navegadores dos usuários. Este projeto utiliza o PWS (Personal Web Server) como servidor de páginas web para o sistema operacional Windows 95/98/ME. As versões NT e 2000 do Windows utilizam outro servidor que é o IIS v4.0 e o IIS v5.0 respectivamente. As páginas ASP presentes em um computador requerem o PWS ou IIS para rodar. 7. APLICAÇÃO IIS Para desenvolver esta aplicação web foi utilizado um tipo especial de tecnologia denominada aplicação IIS (Internet Information Server) a qual é desenvolvida em Visual Basic. Ela é executada em um servidor web, sob o Internet Information Server da Microsoft. 4 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 5 Uma aplicação IIS usa HTML para apresentar a interface do usuário e utiliza código compilado em Visual Basic para processar solicitações e responder aos eventos no navegador. Para o usuário, uma aplicação IIS parece ser feita de uma série de páginas HTML. Para o desenvolvedor, uma aplicação IIS é construída utilizando um tipo especial de objeto chamado webclass, que por sua vez contem uma série de recursos chamados webitems e contém também o código que distribui os webitems ao cliente. Aplicações IIS são projetadas para desempenhar a maior parte do processamento no servidor web. 7.1. ESTRUTURA DAS APLICAÇÕES IIS Uma aplicação IIS consiste dos seguintes itens, dos quais alguns são gerados automaticamente quando se cria o projeto. • • • • • • Uma ou mais webclasses, que são geradas automaticamente quando o programador cria o projeto. Um ou mais templates HTML e seus eventos, que são páginas HTML com alguns campos delimitados que a webclass pode substituir com informações customizadas durante a execução. Um ou mais webitems e seus eventos. Um arquivo ASP usado para hospedar a webclass no Internet Information Server (IIS). O arquivo ASP é gerado automaticamente quando o programador cria o projeto, cujo nome do arquivo é especificado na propriedade “NameInURL”. O componente de run-time da webclass, MSWCRUN.DLL, que auxilia na solicitação dos processos. O arquivo de extensão DLL (gerado automaticamente durante a compilação) que contém seu código em Visual Basic e é acessado pelo componente de run-time. Figura 1 – Estrutura das aplicações IIS 5 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 6 Fonte: Microsoft Na figura 1 o navegador solicita uma página ASP ao servidor web. O servidor web encaminha o pedido ao processador ASP utilizando o IIS. O processador ASP faz a chamada da webclass com o auxílio do componente de run-time da webclass. O código compilado da webclass processa a solicitação e envia a resposta ao navegador que fez a requisição, usando o caminho inverso. 8. WEBCLASS Uma webclass é um componente em Visual Basic que reside no servidor web. A webclass age como a unidade central de funcionamento da aplicação, processando dados do navegador e enviando informação aos usuários. A webclass permite construir a lógica do servidor em Visual Basic e então unir à página ASP. Quando o navegador solicita a página ASP, a página ASP por sua vez chama a webclass para desempenhar o processamento no servidor. Figura 2 – Versão simplificada do funcionamento da Webclass Fonte: Microsoft A figura 2 é uma versão simplificada do funcionamento da webclass. O navegador faz uma solicitação ao servidor web, o processador ASP faz a chamada da webclass e esta envia a resposta ao navegador. 8.1. ENTENDENDO COMO A WEBCLASS FUNCIONA Cada webclass em uma aplicação IIS tem um arquivo ASP associado que o Visual Basic gera automaticamente durante o processo de compilação ou debug. O arquivo ASP hospeda a webclass no servidor web. Além disso, ele gera o componente de run-time da webclass quando a aplicação é primeiro iniciada e dispara o primeiro evento no ciclo de vida da webclass. Cada webclass tem sua própria página ASP, e por sua vez cada webclass pode ter muitos webitems associados à ela. Os webitems são geralmente páginas HTML e outros dados (uma imagem, um arquivo de som) que a webclass pode enviar ao navegador em resposta a uma solicitação. 6 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 7 Figura 3 – Relacionamento entre arquivos ASP e webclasses Fonte: Microsoft Na figura 3 a aplicação IIS é composta de 3 páginas ASP e cada página ASP possui somente uma webclass. Cada webclass por sua vez tem 2 webitems associados. 9. ACTIVEX DATA OBJECTS - ADO ADO significa ActiveX Data Objects e é uma tecnologia criada para acessar qualquer depósito de dados, isto é, é uma coleção de objetos utilizados para recuperação, alteração, inclusão e exclusão de dados. Um depósito de dado pode ser um banco de dados relacional, arquivos texto, planilhas de cálculo, diretórios, isto é, qualquer fonte de dados. [...] é simplesmente um conjunto discreto de funções logicamente relacionadas, usadas para fornecer um serviço de um objeto servidor para um objeto cliente, utilizando determinada tecnologia. [...] ADO é um conjunto de recursos para acessar qualquer fonte de dados. Sendo um conjunto de recursos e estando em Windows, ADO é na verdade um conjunto de DLLs, e dentro dessas DLLs está tudo o que você precisa para acessar dados universais. Como estamos falando de ASP que é orientada a objetos, a ADO automaticamente pode ser resumida com um conjunto de componentes para acesso a qualquer fonte de dados (FRANKLINT, 2001, p. 114). O ADO foi utilizado neste projeto para armazenar e restaurar dados presentes nos arquivos formato XML. 10. UTILIZAÇÃO DA LINGUAGEM XML NA APLICAÇÃO XML significa Extensible Markup Language e é um formato universal para dados na web. XML permite que desenvolvedores facilmente descrevam e distribuam dados estruturados de qualquer aplicação numa forma padrão e consistente. XML foi criada para estruturar, armazenar e enviar informação pela Internet. O XML é uma linguagem de marcação como o HTML. XML não substitui HTML, ao contrário, é um formato complementar. Sua diferença é utilizar uma linguagem própria. Portanto não há tags XML que são predefinidas, as tags são criadas pelo próprio desenvolvedor. O XML possui a importante característica de ser extensível, permitindo que novas tags de marcação sejam criadas por quem utiliza o XML (principalmente desenvolvedores). A base de dados do software SuperDrive foi desenvolvida em XML. 7 ICPG 11. Instituto Catarinense de Pós-Graduação – www.icpg.com.br 8 DESCRIÇÃO DO SOFTWARE Antes de instalar o software SuperDrive (nome do software desenvolvido), o usuário deve ter instalado no microcomputador o ADO v2.6 ou posterior, o servidor web PWS ou IIS dependendo da versão do Windows, e o Internet Explorer v5.5 ou posterior. O software SuperDrive é instalado no diretório C:\Inetpub\wwwroot\SuperDrive. O arquivo que inicializa o aplicativo chama-se default.asp e está no diretório principal do SuperDrive. O servidor web deve ser configurado para que o arquivo default.asp rode quando o aplicativo for chamado. Para executar o software no microcomputador local basta digitar “http://localhost/SuperDrive/” na barra de endereço do IE (Internet Explorer). O arquivo default.asp é processado e uma página HTML de entrada é apresentada. Nesta janela pode-se verificar os requerimentos de hardware e de sistema e o endereço do suporte técnico. Clicando-se no botão “Iniciar o SuperDrive”, o arquivo menuprincipal.asp é automaticamente executado e a janela com o menu principal é carregada. Figura 4 – Menu principal do software SuperDrive Fonte: WEG Na figura 4, na parte superior, podem-se visualizar os menus projeto, online, ferramentas e ajuda, onde cada menu exibe uma lista de comandos. Na parte central aparece o nome do projeto que está aberto e o nível de acesso permitido para o usuário. Na parte inferior é apresentado o endereço, nome do drive, versão, tensão e corrente nominal e a porta serial selecionada para comunicação serial. 8 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 9 E para rodar o software em um microcomputador remoto pela internet, basta digitar “http://ip_do_microcomputador_local/SuperDrive/” na barra de endereço do IE. A mesma página HTML de entrada que foi apresentada no microcomputador local também é aqui visualizada. Um endereço IP (Internet Protocol) é uma sequência de algarismos (exemplo: 200.23.110.161) que representa o endereço de um computador que está ligado à Internet. A cada computador ligado à Internet corresponde um endereço IP. O usuário deve criar um projeto utilizando a função “Novo” no menu “Projeto”. Utiliza-se a função “Endereço” para selecionar o endereço do drive na rede na faixa 1 à 30. Clica-se no link “Atualizar” para atualizar os dados do inversor no software SuperDrive, que são o modelo de inversor, versão do firmware, corrente nominal e tensão nominal. A leitura dos dados do inversor é feita pela porta serial COM1 até COM16 do microcomputador, selecionável pelo usuário. Este porta serial é uma interface de comunicação RS-232. O microcomputador deve ser ligado ao inversor por um cabo apropriado. O mestre é o microcomputador e o inversor é o escravo. O software envia um telegrama serial solicitando informações ao inversor, e o inversor responde estas solicitações com outro telegrama. O usuário deve então selecionar os parâmetros a serem monitorados usando o item “Selecionar Parâmetros”. Após a seleção de parâmetros já é possível monitorar. Pressionandose o item de menu “Monitorar”, a janela de comandos do CFW-09 e a janela de monitoração abrem-se automaticamente com os parâmetros selecionados anteriormente, podendo-se visualizar o conteúdo de cada parâmetro. A janela é atualizada, por exemplo, a cada 2 segundos, apresentando o valor instantâneo de cada parâmetro naquele momento. O usuário pode selecionar outras taxas de atualização. Pressionando-se a tecla PROG na janela de comandos do CFW-09 abre-se uma janela de alteração de parâmetros que permite alterar o conteúdo dos parâmetros. Figura 5 – Janela de monitoração do software SuperDrive Fonte: WEG 9 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 10 Na figura 5, na parte superior, são apresentados os comandos e as características do inversor de freqüência CFW-09. Na parte central da janela pode-se visualizar o estado do inversor, a situação instantânea dos comandos e o conteúdo instantâneo dos parâmetros. Na parte inferior pode-se visualizar o conteúdo de um parâmetro e em seguida fazer alteração do seu conteúdo, bem como a velocidade do motor em 13 bits. É possível visualizar todos os parâmetros e alterar os parâmetros de escrita. Simultaneamente podem ser visualizados até 20 parâmetros. Enviar comandos ao inversor também é possível, como por exemplo rodar ou parar motor, mudar o sentido de rotação do motor e reinicializar o inversor quando ocorre algum erro crítico que necessite reinicialização. Todas as funções de controle do inversor estão disponíveis no aplicativo, logo é possível realizar diversas aplicações ajustando-se os parâmetros do inversor pelo aplicativo. Este aplicativo web trabalha em pequenas transações, isto é, a apresentação das páginas no navegador do usuário é uma série de pequenas transações entre o cliente (o navegador) e o servidor (o servidor web). O cliente navegador faz uma solicitação de página para o servidor web. A solicitação é sempre para um arquivo de extensão ASP específico, muito embora isto possa não ser visível no campo endereço do navegador. Este arquivo ASP é executado e quando necessário ele solicita informações (dados) ao inversor de freqüência. Os dados obtidos do inversor de freqüência são inseridos na página que retornará ao cliente navegador. O processo todo, da solicitação até a resposta, é uma transação entre o cliente e o servidor. O cliente sempre inicia a transação, espera até o servidor retornar a resposta, quando então a transação estará completa. 12. CONSIDERAÇÕES FINAIS Está-se vivendo um tempo de revolução na forma de fazer negócios, sendo que a Internet tem um peso essencial nestas mudanças. Através dela os computadores podem ser interligados e as informações podem trafegar e alcançar distâncias que vão além do próprio país. Nesse momento cabe uma reflexão a todas as empresas sobre como podem utilizar essa ferramenta tão poderosa para diferenciar-se dos seus concorrentes no mercado. Cada empresa pode estar certa, de que se ela não fizer essa reavaliação dos seus passos, seus concorrentes o farão. Uma das formas encontradas para utilizar-se das novas tecnologias é disponibilizar novos serviços aos clientes gratuitamente. Nessa opção é considerado o baixo custo proporcional a cada atendimento em relação a um atendimento in loco (já que não há despesas de deslocamento, estadia, além das horas caras de um profissional qualificado, que se reduzem utilizando a web). É uma maneira de conquistar e fortalecer o relacionamento nos negócios com os clientes. Consegue-se agregar mais valor ao produto fornecido, o que é um ponto forte para tornar o produto mais atraente. Assim, a WEG, buscando evoluir seus produtos e fornecer mais serviços aos clientes, desenvolveu uma aplicação web para controlar um inversor de freqüência utilizando a Internet como meio para trafegar as informações. Esta aplicação permite que a WEG auxilie o cliente quando este estiver com dificuldades durante a parametrização do equipamento. É uma aplicação prática utilizando a web para monitorar as funções de um inversor de freqüência, permitindo que se controle o equipamento remotamente. 10 ICPG Instituto Catarinense de Pós-Graduação – www.icpg.com.br 11 Assim a empresa consegue estar muito mais próxima do seu cliente, pois no momento da abertura do chamado, alguém já pode se conectar remotamente e solucionar o problema apresentado. Sobre as ferramentas tecnológicas utilizadas nesta aplicação pode-se destacar a linguagem Visual Basic, linguagem principal do desenvolvimento do aplicativo. Com o Visual Basic cria-se um tipo de projeto denominado aplicação IIS, que é uma tecnologia especial para ser executada em um servidor web. A aplicação IIS contém vários objetos denominados webclasses que trabalham junto com o Active Server Pages para prover o processamento de requisições ao servidor web. O servidor web utilizado é o Internet Information Server da Microsoft, o qual disponibiliza as informações do inversor em páginas HTML. As tecnologias apresentadas permitem que projetos futuros incluam outros tipos de equipamentos para monitoração pela web, como por exemplo, soft-starter e servo-conversor. Há outras ferramentas disponíveis, e em aplicações futuras podem vir a ser utilizadas pela WEG. Mas pode-se dizer que esse aplicativo é um marco, um ponto de partida, de onde outros serviços poderão vir a ser transferidos para a web, disponibilizando-se assim uma nova forma de prestação de serviços. 13. REFERÊNCIAS JONES, A. Russel. Visual Basic Guia do Programador para ASP e IIS. 2. ed. São Paulo: Market Books, 2000. 416p. FRANKLINT, Kleitor. ASP Active Server Pages Técnicas e Estratégias. São Paulo: Érica, 2001. 354p. KOTLER, Philip. Marketing para o Século XXI. 9. ed. São Paulo: Futura, 2001. 314p. AMOR, Daniel. A (R)evolução do E-business. São Paulo: Makron Books, 2000. 608p. WEG Indústrias S/A – Automação. Guia de Aplicação de Inversores de Freqüência. Jaraguá do Sul, 2002. 242p. MICROSOFT Corporation. Microsoft Official Curriculum - Course Number 1013A – Mastering Visual Basic 6 Development. Washington, 1998. MICROSOFT Corporation. MSDN Library Visual Studio 6.0a. Washington: Microsoft Corporation, 2001. CD-ROM. 11