NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!

UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI

Você está em: PrincipalArtigosProgweb : Sistemaloginasp005
Quer receber novidades e e-books gratuitos?

Sistema de Login em ASP – Parte V

 

Bom, meu nome é Mauricio Junior. Continuarei essa parte V onde explico e desenvolvo algumas functions dentro do Visual Basic 6.0. É necessário ter as functions antes de desenvolver a página ASP final, que verifica usuário e senha utilizando três camadas.

 

A function mostrada anteriormente foi EXECUTASQLARRAY. A referência 5.1 mostro todas que ainda serão criadas dentro do Global.bas.

 

Referência: 5.1 Visual Basic 6.0

 

Agora irei criar a function ExecutaSQL, responsável apenas para executar os comandos SQL INSERT, UPDATE e DELETE. (5.2 – Visual Basic 6.0)

 

Public Function ExecutaSQL(ByVal SQL As String, _

                           Optional ByVal sMetodoOrigem As String = "") As Boolean

On Error GoTo error

    If SQL <> "" Then

        CONN.Execute (SQL)

    End If

 

error:

    If Err.Number <> 0 Then

        ExecutaSQL = False

    Else

        ExecutaSQL = True

    End If

End Function

 

Referência: 5.2 – Visual Basic 6.0

 

Explicação:

 

Analisando a assinatura da function, note que é pública e recebe dois parâmetros do tipo string, sendo um obrigatório e outro opcional. No final, é retornado um valor do tipo Boolean, ou seja, true ou false.

 

Public Function ExecutaSQL(ByVal SQL As String, _

                           Optional ByVal sMetodoOrigem As String = "") As Boolean

 

Referência: 5.3 – Visual Basic 6.0

 

O próximo passo, utilizei o On Error GoTo error. Isso é significa que se algum erro ocorrer dentro dele, automaticamente será redirecionado para a parte de error.

 

On Error GoTo error

 

Referência: 5.4 – Visual Basic 6.0

 

O parâmetro obrigatório ByVal SQL as String é necessariamente o comando SQL enviado por uma function anterior que terá todos os valores necessários para inserir no banco de dados.

 

   If SQL <> "" Then

        CONN.Execute (SQL)

    End If

 

Referência: 5.5 – Visual Basic 6.0

 

Na referência 5.5, existe uma condição onde verifico se a variável SQL é diferente de vazio, isso porque esse valor será executado junto ao Execute do objeto de conexão CONN. Já que a variável SQL terá um dos comandos INSERT, UPDATE ou DELETE, não haverá problemas para ser executado.

 

error:

    If Err.Number <> 0 Then

        ExecutaSQL = False

    Else

        ExecutaSQL = True

    End If

 

Referência: 5.6 – Visual Basic 6.0

 

Dentro do “error:”, verifico se o é diferente de zero. Se for, a function recebe false, senão for, a function recebe true. Essa atribuição faz com que retorne o valor atribuído. É sempre bom utilizar o On Error GoTo error para prevenir qualquer tipo de erro dentro da dll.

 

A referência 5.7 mostra a ilustração de toda function mostrada e explicada.

 

Referência: 5.7 – Visual Basic 6.0

 

Encryptografar

 

Antes de qualquer coisas, na function utilizo outro componente dll chamado RC4. O mesmo possui a function EnCrypt onde recebe dois parâmetros. O primeiro parâmetro é do tipo string, ou seja, o valor decriptografado e o outro é do tipo numérico, ou seja, a chave. (5.8)

 

Referência: 5.8 – Visual Basic 6.0

 

Explicação:

 

Public Function Encryptografar(ByVal DESCRICAO As String) As String

 

Referência: 5.9 – Visual Basic 6.0

 

Como o de sempre, essa function é pública e recebe um parâmetro do tipo string. Além de receber parâmetro, retorna um parâmetro do tipo string. Isto é, o parâmetro sem cripitografada é enviado, retornando outro valor totalmente misturado ou criptografado.

 

A dll chamada RC4 é responsável pela criptografia do sistema. (5.10 – Visual Basic 6.0)

 

 

No começo da function declarei duas variáveis. (5.11 – Visual Basic 6.0)

 

Dim RC4

Static sRetorno

 

Referência: 5.11 – Visual Basic 6.0

 

Como dito anteriormente em outras functions, é sempre bom usar “On Error GoTo error”, dessa forma posso pegar o erro “se ocorrer” em qualquer parte do código. Foi a próxima linha que adicionei. (5.12)

 

On Error GoTo error

 

Referência: 5.12 – Visual Basic 6.0

 

Para a dll responsável pela criptografia deve ser registrada junto ao COM PLUS. Isso apenas para o uso da function dentro do VB. De qualquer forma, criei a function para utilizá-la normalmente. Declarei uma variável anteriormente para depois instanciá-la, criando um objeto da própria dll. (5.13 – Visual Basic 6.0)

 

    Set RC4 = CreateObject("RC4DLL.Crypt")

    sRetorno = RC4.EnCrypt(DESCRICAO, 9999)

 

Referência: 5.13 – Visual Basic 6.0

 

O comando CreateObject(“RC4DLL.Crypt”) faz com o que o objeto RC4 crie um vínculo com a dll, podendo assim ser usado todas as suas functions publicas. A function retorna uma string criptografada onde armazeno o valor na variável declarada anteriormente chamada sRetorno. Note que passei os parâmetros corretos para criptografar e manter uma “certa” segurança no sistema.

 

error:

    If Err.Number <> 0 Then

        Encryptografar = Err.Number

    Else

        Encryptografar = sRetorno

    End If

 

    Set RC4 = Nothing

 

Referência: 5.14 – Visual Basic 6.0

 

Para finalizar a function, pergunto se existiu algum erro para retorná-lo ou retornar a variável criptografada. Não esqueça que retorno o valor do tipo string. Essa function em si é usada apenas internamente, ou seja, outras classes usarão essa function. No final de tudo, atribuo o RC4 para nothing. Com isso, destruo o objeto criado anteriormente.

 

Segue a ilustração inteira da function criada. (5.15)

 

Referência: 5.15 – Visual Basic 6.0

 

 

Alguns livros publicados pela editora Ciência Moderna.

 

 

Bom, fico por aqui.

 

Espero ter ajudado em alguma coisa.

 

Fique de olho nos próximos artigos.

 

Mauricio Junior

www.mauriciojunior.org

www.aspneti.com

 

Quer receber novidades e e-books gratuitos?

 
 

Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434

Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208

Todos os direitos reservados, Júlio Battisti 2001-2024 ®

LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO

DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI