GARANTIR DESCONTO

Fórum trocar senha tempo execução? é possivel? #175989

19/08/2003

0

ola amigo estou com uma duvida que nao estou conseguindo resolver



estou fazendo um programa que pede uma senha de acesso gostaria de saber com faço para trocar esta senha em tempo de execução a logica é esta dentro de um botao



begin

if edit1.text<> ´teste´ then
showmessage (´senha incorreta acesso negado ao sistema´);
end;

gostaria de saber como posso trocar esta senha em tempo de execução. e poder gravala para ficar definitiva no programa ......nao estou conseguindo resolver este poblema.........pois o cliente quer que eu coloque uma poçao para ele poder trocar esta senha... mas nao estou conseguindo fazer esta logica


Keliniciante

Keliniciante

Responder

Posts

19/08/2003

Khelphi Wanstear

ola amigo estou com uma duvida que nao estou conseguindo resolver estou fazendo um programa que pede uma senha de acesso gostaria de saber com faço para trocar esta senha em tempo de execução a logica é esta dentro de um botao begin if edit1.text<> ´teste´ then showmessage (´senha incorreta acesso negado ao sistema´); end; gostaria de saber como posso trocar esta senha em tempo de execução. e poder gravala para ficar definitiva no programa ......nao estou conseguindo resolver este poblema.........pois o cliente quer que eu coloque uma poçao para ele poder trocar esta senha... mas nao estou conseguindo fazer esta logica




Ola amigo... Ñão entendi direito a sua dúvida mas pela que pouco compreendi é assim vc tem um registro de senha dos sistema
ex:

tabela usuários:
nome - senha
João - 50135


se for assim é só vc alterala como um registro normal...ex
vc localiza o registro pela usuário e altera a senha, se o campo chave for o nome vc não podera alterar o nome somente a senha... é mais ou menos assim, bem facinho, se não for isso e tiver mais dúvidas é so mandar para meu e-mail denis@khan.com.br


Responder

Gostei + 0

19/08/2003

Andredelfino

Senha dentro do executavel voce não consegue alterar, mas pode utilizar calculo de data/hora para chegar a um numero chave e isso claro que voce tera que visualizar a data e hora para calcular a senha manualmente e informar o resultado que devera ser igual a formula que colocara dentro do sistema, por exemplo:

jogue em variaveis as seguinte informações:

Data/Hora: 19/08/2003 21:37hs

DD := 19
MM := 08
YY := 2003
HS := 21
MIN:= 37

SENHA := (DD*HS)+INT(YY/MM)+MIN; /// Resultado = 686

se não quiser usar a dica do ´Khelphi Wanstear´ esta seria uma solução, mas não seria a forma correta de fazer a não ser que seja uma senha de liberação especial, mas o correto é realmente usar uma tabela para gravar o registro de usuarios e grave a senha cryptografada ou pode até usar uma forma de calculo para gravar a senha usando o codigo ascii para calcular um valor a gravar na tabela e a confirmação da senha pode ser o resultado da senha informada e calculada comparando com a senha no campo da tabela.

espero ter ajudado

boa sorte


Responder

Gostei + 0

19/08/2003

Helbert

Olá Kel,como vai?
Bom eu uso o seguinte procedimento para validar Login e Senha.
//Procedimento para verificar Login e Senha do Usuário.

procedure TF_Login.BitBtn1Click(Sender: TObject);
Var
  CONTEUDOSENHA : TStringField ;
begin
   If Not (DM_Modulo.TabLogin.FindKey([Edit1.Text])) Then
    Begin
      ShowMessage(´Login recusado, usuário(a) não cadastrado(a)...´) ;
      Edit1.SetFocus ;
      Exit ;
    End ;
  CONTEUDOSENHA := DM_Modulo.TabLogin.FindField(´Senha´) as TStringField ;
  Encrypt(Edit2.Text);
  If (CONTEUDOSENHA.Value <> Edit2.Text) Then
    Begin
      ShowMessage(´Login recusado, senha inválida...              ´) ;
      Edit2.SetFocus ;
      Exit ;
    End ;
  if  ((DM_Modulo.TabLoginLogin.Value = Edit1.Text) and (DM_Modulo.TabLoginSenha.Value = Edit2.Text)) then
      begin
      F_Menu.Enabled:=True;
      F_Menu.LinhaStatus.Panels[1].Text:=(´ Logado como: ´+ Edit1.Text);
      end;
        F_Login.Release ;
end;


Lembrando que [u:20e5611982]Encrypt(Edit2.Text);[/u:20e5611982], é uma função que uso para criptografar senha, caso queira fazer uso desta função posso te passar por email depois.

Bom além deste procedimento uso também os seguintes procedimentos para cadastrar e alterar Login e Senha.
//Procedimento para cadastrar Login.

procedure TF_CadLogin.BitBtn1Click(Sender: TObject);
  var opc:word;
Begin
  if (DM_Modulo.TabLogin.State in [dsInsert, dsedit]) then
    begin
    ShowMessage(´ Nenhum campo pode ficar em branco ´);
    DBEdit1.SetFocus;
    exit;
    end
    else
       DM_Modulo.TabLogin.post;
       opc:=MessageDlg(´Login cadastrado com sucesso!´+13+
                            ´Deseja cadastrar um novo Login´
                                   ,mtConfirmation,[mbYes,mbNo],0);
     if opc = mrNo then
        begin
              F_CadLogin.Close;
              F_Menu.Enabled:=True;
        end
        else
        DM_Modulo.TabLogin.Append;
end;


//Procedimento para alterar Login.

procedure TF_CadLogin.BitBtn3Click(Sender: TObject);
var
  texto:string;
begin
  texto:=´´;
  if (DM_Modulo.TabLogin.State in [dsInsert, dsedit]) then
    if InputQuery(´Kymera´,´ Informe o Login a ser alterado! ´,Texto) then
        if ( DM_Modulo.TabLogin.FindKey([ texto ])) then
              begin
                DM_Modulo.TabLogin.edit;
                BitBtn1.Visible:=false;
                BitBtn4.Visible:=true;
              end
              else
                  ShowMessage(´ Login não encontrado! ´);
                  F_CadLogin.Refresh;
                  DBEdit1.Text:=´´;
                  DBEdit2.Text:=´´;
                  DBEdit6.Text:=´´;
                  DBComboBox1.Text:=´´;
                  DBComboBox2.Text:=´´;
                  Edit1.Text:=´´;

end;


Um último detalhe, é que nestes exemplos estou usando BDE e Access.
Bom, no mais espero ter ajudado. :D


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar