Página 1 de 1
falha no logon- entra sem a senha minigui
Enviado: 07 Set 2006 11:35
por kamix
olha grupo tenho uma função de acesso que retirei do sample da minigui
do sistema finance 1.0
mas esta com um problema apos ter gravado a senha, quando vou entrar
digito o login mas não digito nada no campo senha e entra igual mesmo
tendo senha cadastrada li a respeito deste bug em algum forum mas
lembro onde foi se alguém souber a solução favor postar para mim
obrigado.
Enviado: 10 Set 2006 18:05
por Daniel
Ola
Código: Selecionar todos
Function Verifica_Login()
Local cUser := AllTrim( Form_acesso.p_User.Value )
Local cPass := AllTrim( Form_acesso.p_password.Value )
Local aStatusDoUsuario := {}
*** Se o TextBox p_User não foi informado
If Empty( cUser ) .Or. Empty(cPass) //coloque aqui mais uma comparação de senha vazia
MsgINFO("Usuário ou Senha não informado!!",SISTEMA)
Form_acesso.p_user.SetFocus
Return Nil
EndIf
*** Posiciona o Arquivo Accesso no Indice 2 - Indexado por Apelido
Acesso->(DBSetOrder(2))
*** Se o Apelido digitado em TextBox p_User for encontrado
If Acesso->(DBSeek( cUser ))
*** Decriptografa a Senha do usuário armazenada no arquivo e compara com a senha digitada
If cPass != Decripta( Acesso->Senha ) // mude a orden da comparação
*** Se for diferente, envia mensagem e posiciona o cursor no campos p_password
MsgInfo("Senha de acesso Inválida!!",SISTEMA)
Form_acesso. p_password .SetFocus
Return Nil
EndIf
** Se a senha for válida, efetua o release da janela de Login
Release Form_acesso
Else
** Se o usuário/Apelido não existir, emite mensagem e posiciona o cursor em p_User
MsgInfo("Usuário: "+cUser+" não Cadastrado!!",SISTEMA)
Form_acesso.p_User.SetFocus
Return Nil
EndIf
Enviado: 16 Set 2006 16:14
por Stanis Luksys
Olá...
E o que vem a ser a função Decripta()? O que faz ela e como obtemos seu código?
Valeu.
Enviado: 19 Set 2006 20:26
por Daniel
ai esta a função ela foi usando no exemplo do controle finaceiro da minigui 1.08 feita por Humberto Fornazier
Código: Selecionar todos
Function Decripta( cPalavra )
Local nTam := 0
Local cChave := "@#$%*"
Local cCripitado := ""
Local i :=0
cPalavra := Iif( Empty( cPalavra ), "Ze Coolmeia", cPalavra )
nTam := Len( cPalavra )
Do While Len( cChave ) < nTam
cChave += cChave
EndDo
cCripitado := ""
For i := 1 To nTam
cCripitado += Chr( Asc( SubStr( cPalavra, i, 1 ) ) - Asc( SubStr( cChave, i, 1 ) ) )
Next
Return cCripitado
/*
*/
Function Encripta( cPalavra )
Local nTam := 0
Local cChave := "@#$%*"
Local cCripitado := ""
Local i :=0
cPalavra := Iif( Empty( cPalavra ), "Ze Coolmeia", cPalavra )
nTam := Len( cPalavra )
Do While Len( cChave ) < nTam
cChave += cChave
EndDo
cCripitado := ""
For i := 1 To nTam
cCripitado += Chr( Asc( SubStr( cPalavra, i, 1 ) ) + Asc( SubStr( cChave, i, 1 ) ) )
Next
Return cCripitado
Enviado: 19 Set 2006 22:44
por Stanis Luksys
Obrigado Daniel.
:xau