O uso da nova tecnologia WebClass do VB6 facilita a criação de aplicativos flexíveis e poderosos baseados na Internet. No início deste ano, mostramos como escrever um aplicativo de registro que permite aos usuários visitar sua página e registrar-se em um produto de software. User Registration Class," VBPJ abril de 1998 e "Add E-Mail Registration to your Server," VBPJ maio 1998]. Após o cadastro, a aplicação enviará uma sequência ao usuário via número de e-mail, e existe uma conexão com a Web para continuar o processo de registro. O aplicativo VB5 que mostrei anteriormente criou uma DLL ActiveX que é executada no servidor Web e uma DLL que determina o status do usuário e chama o script ASP correspondente (Active Server Page). um novo meio de escrever este tipo de aplicação, utilizando uma nova tecnologia - WebClass
Resumindo, WebClass é um ActiveX executado na DLL do servidor Web. Ele permite que o hiperlink da página HTML no navegador do cliente ative eventos na DLL do servidor. O modo de programação do WebClass é semelhante ao modo VB tradicional - a diferença é que no VB o formulário contém controles, enquanto o aplicativo WebClass O programa é uma página da Web que contém controles. modelo de evento VB completo, para que o desenvolvimento Web altamente interativo possa ser executado Nesta coluna, discutiremos como criar um aplicativo WebClass simples para mostrar como isso é simples.
Para criar um aplicativo WebClass simples, você deve iniciar o VB6 e selecionar. o aplicativo IIS na caixa de diálogo Novo Projeto. Nomeie o projeto como SimpleReg na janela Propriedades. Clique duas vezes no projeto WebClass Designer no navegador (você pode ver a janela Propriedades e o Navegador de Projeto através do menu Exibir). , nomeie a WebClass como wcSimple e insira SimpleReg na propriedade NameURL. Isso será criado ao compilar a DLL do ActiveX. Um arquivo de inicialização chamado SimpleReg.asp.
Um aplicativo WebClass exibe HTML no navegador do usuário usando um modelo HTML. Como o VB6 não inclui um editor HTML, você deve criar um modelo HTML fora do VB6 (o designer DHTML do VB6 não tem nada a ver com WebClass). qualquer editor HTML, mas como o Visual Studio inclui o Visual InterDev (VID) 6.0, o VID é uma escolha razoável.
Defina o Visual Studio como o editor HTML padrão para Visual Basic no menu Ferramentas|Opções do VB6. seguinte caminho do Visual InterDev - C:Promram FilesMicrosoft Visual StudioCommonIDE|IDE98Devenv.exe na caixa de edição HTML externa Você notificará o Visual InterDev para criar um arquivo de modelo para o seu projeto. Por exemplo: se o seu modelo. é chamado de WebPage.htm, então o InterDev cria uma cópia chamada Web1Page.htm. Se você usar o Notepad ou outros editores para criar seu modelo, leve isso em consideração
no código de rotina, o arquivo SimpleReg.htm é um modelo criado pelo Visual. InterDev. No painel esquerdo do designer WebClass, selecione a pasta HTML Template WebItem. Você pode adicionar o modelo SimpleReg ao projeto da seguinte maneira: clique no botão AddHTML Template WebItem e clique em Selecione o arquivo SimpleReg.htm na caixa de diálogo de seleção de arquivo. (veja a Figura 1). Nomeie o novo WebItem tplSimple. Clique duas vezes em tplSimple para visualizar o código sobre WebClass. Encontre o processo WebClass_Start e substitua o código original gerado pelo seguinte código para exibir o modelo ao carregar WebClass:
Private Sub WebClass_Start(). )
'Mostra o modelo HTML principal www.downcodes.com
Session("Título") = "Insira suas" e "Informações de registro"
tplSimple.WriteTemplate
End Sub
WebClass_Start é semelhante ao processo Form_Load de um aplicativo VB tradicional. Execute o programa e observe a página HTML exibida pelo seu navegador. Saia do navegador e encerre o aplicativo VB. Método WebClass).
No WebClass Designer, clique com o botão direito no WebItem tplSimple e selecione Editar modelo HTML no menu de contexto. Você verá a página do modelo em seu editor HTML padrão. Lendo o código-fonte, você pode ver Isto é simples. página composta por três partes especiais chamadas tags, no seguinte formato:
< WC@TAGTITLE>Título</WC@TAGTITLE >
A parte de texto dessas tags ("Título") é alterada por você em tempo de execução O código adicionado ao WebClass é substituído . Quando o método WriteTemplate é executado, ele chama um procedimento especial chamado ProcessTag uma vez para cada tag encontrada no modelo HTML. De volta ao VB, clique duas vezes em tplSimple WebItem para exibir a janela de código. caixa de combinação superior e adicione o seguinte código:
Dim sHTM As String
Selecione TagName do caso
Caso " WC@TAGTITLE "
TagContents =Sessão("Título")
Caso " WC@TAGMAIL "
sHTM = "Insira o endereço de e-mail:<br>"
sHTM = sHTM & "<tipo de entrada= 'texto'"
sHTM = sHTM & "nome= 'E-mail'><br>"
TagConteúdo = sHTM
Caso " WC@TAGNAME "
sHTM = "Nome:<br>"
sHTM = sHTM & "<tipo de entrada= 'texto'"
sHTM = sHTM & "nome= 'Nome'><br>"
TagConteúdo = sHTM
End Select
retorna o código HTML no parâmetro TagContent para substituir a tag Defina um ponto de interrupção em tplSimple Adicione WriteTemple ao procedimento WebClass_Start e execute seu aplicativo no ponto de interrupção, use F8 para percorrer o projeto. Você verá que o procedimento ProcessTag é chamado três vezes - uma para cada tag do template. O mais legal é que em tempo de execução o procedimento usará HTML que irá gerar uma caixa de texto no navegador que substitui o E-mail. Tags de nome.
Ser capaz de depurar interativamente o código de evento do lado do servidor é um dos recursos mais poderosos do desenvolvimento de aplicativos WebClass com VB. No desenvolvimento da Web VB5, o VBScript em scripts ASP é concluído. Você não pode depurar o VBScript. interativamente em scripts ASP - a única maneira viável, infelizmente, é errar e tentar novamente. No entanto, no VB6, todo o código do lado do servidor é executado em WebClass e você pode usar o excelente ambiente de design do VB para depuração interativa.
Conectando um evento
. é adicionar o código de manipulação de eventos para o botão Register Me no formulário. Retorne ao designer WebClass do VB e clique em tplSimple WebItem. No painel direito, você verá uma lista de membros HTML na página e poderá associar eventos a eles. . Clique com o botão direito na tag Form1 e selecione o item de menu Conectar ao evento personalizado e observe que próximo ao nome do evento Form1 na coluna Destino Dê uma olhada rápida no modelo HTML (clique com o botão direito em tplSimple e selecione Editar modelo HTML). . Encontre os membros do formulário. Eles agora se parecem com isto
<FORM method = 'post' action = SimpleReg.ASP?
&WCE=RegisterMe&WCU>
SimpleReg.asp é um script de inicialização ActiveXDLL especial. O valor após o ponto de interrogação indica que WebClass Item (WCI) é tplSimple, WebClass Event (WCE) é RegisterMe e WebClass URLData (WCU) está vazio. . Quando o usuário clica no botão Registrar-me no navegador, esta linha ativará o botão tplSimple_RegisterMe na DLL do servidor ActiveX. Dessa forma, a atividade do formulário está vinculada ao evento do lado do servidor, mas você pode definir um hiperlink. no navegador para ativar Eventos no servidor. WebClasses funcionam como mágica para o desenvolvimento de aplicativos Web - eles estendem a programação orientada a eventos do VB para aplicativos baseados em navegador.
Clique duas vezes no evento RegisterMe no painel esquerdo do VB Designer para exibir o código. janela Adicione o seguinte código ao evento:
If Len(Request.Form("Email")) = 0 Then
Session("Titile") = "Por favor" & "Digite um endereço de e-mail!"
Sessão("E-mail") = ""
Sessão("Nome") = ""
Outro
Session("Título") = "Aqui está" & "sua entrada!"
Sessão("E-mail") = Request.Form("E-mail")
Sessão("Nome") = Reuquest.Form("Nome")
Terminar se
TplSimple.WriteTemplate
Request.Form é uma forma padrão de retornar dados de uma página do navegador. Ele define algumas variáveis de sessão e exibe novamente a mesma página HTML. Defina um ponto de interrupção na instrução If e execute o projeto. o botão Register Me. Você verá que o título foi atualizado, mas a caixa de texto está vazia. Isso ocorre porque você não inseriu os valores correspondentes para eles ao escrever o modelo. processo (Baixar a listagem 1 do DevX; consulte a caixa Baixar código gratuito para obter detalhes).
Por fim,adicione
uma maneira. para armazenar e armazenar a soma do banco de dados. Método para obter registros. Para simplificar, usamos o Microsoft Acess 97 como nosso banco de dados. Crie um novo banco de dados com o Acess em seu diretório de origem e nomeie-o como Register.mdb. , respectivamente Email e Nome, e salve-os no disco. Selecione OK quando o Acess solicitar que você crie um campo de índice exclusivo e coloque uma cópia de Register.mdb no diretório raiz da sua unidade C.
No projeto, adicione um Microsoft ActiveX. Referências da Biblioteca de Objetos de Dados, você pode encontrá-las em Projeto|Referência.... Você pode usar a biblioteca ADO versão 1.5 ou 2.0. Se não tiver a biblioteca ADO instalada, você pode baixá-la do site da Microsoft: http:/. /www.microsoft.com/data Faça download do kit de ferramentas de instalação do MDAC2.0 em /ado. Altere o código no processo tplSimple.RegisterMe (faça download da listagem 2 do DevX; consulte a caixa Baixar código gratuito para obter detalhes)
. no formulário na variável Session, abra o conjunto de registros ADO e procure o endereço de e-mail (Baixe a Listagem 3 do DevX)
. função define a string de conexão:
private Function Connect() As String
'Retorna uma string de conexão ADO
Const kDB = "DBQ=c:register.mdb;"
Const kDrv = "Drive={Microsoft" & "Driver de acesso (*.mdb)}"
Conectar = kDB e kDrv
Função final
Defina um ponto de interrupção em tplSimple_RegisterMe, execute o programa e veja como funciona o código de acesso a dados. Este exemplo simples mostra como é simples a programação em ADO. Lembre-se de configurá-lo em sua empresa. Qualquer aplicativo "real" deve incluir tratamento de erros. De modo geral, você também usará o registro para salvar variáveis, como informações da cadeia de conexão, e precisará fornecer uma maneira de atualizar os registros e excluir registros desnecessários.
Quando você compilar o projeto, duas coisas acontecerão. qualquer projeto ActiveX em VB, um registro DLL ActiveX será gerado na máquina de desenvolvimento. A segunda coisa é: um WebClass será gerado O arquivo de inicialização ASP especial nomeado pelo nome especificado pelo atributo NameInURL. do arquivo é: SimpleReg.asp. Observe o script no Bloco de Notas Quando o usuário insere a URL do arquivo no navegador, o IIS cria uma instância do SimpleReg.wcSimple WebClass. Em qualquer circunstância,
do ponto de vista do usuário, registrar a versão WebClass do aplicativo é semelhante à série mostrada em maio de 1998. O código desta série é realmente semelhante à série mostrada anteriormente, exceto que agora todo o código está incluído no. WebClass e o arquivo ASP iniciado não incluem nenhuma informação do usuário.
Notas
Comparação do aplicativo antes e depois, você deve ter uma compreensão consistente de como o WebClass funciona. Converter um aplicativo leva um tempo considerável, mas você deve fazer isso porque há benefícios reais em fazer isso. Por exemplo: WebClass permite criar ou estender aplicativos de maneiras que não eram possíveis antes
. É claro que é possível desenvolver um conjunto de ferramentas para a Internet com VB5. Aplicativos Web também são possíveis, mas você terá que usar vários pequenos truques de programação para fazer o script ASP interagir corretamente com a DLL VB. do VBScript, não falta um verdadeiro ambiente de programação orientado a eventos. O WebClass oferece ao VB funcionalidade completa para o desenvolvimento web - e isso é uma coisa boa.