none
Criar um form de login com usuario e senha RRS feed

  • Pergunta

  • Bom dia a todos!

    Estou terminando um programa que le dados da porta serial.

    Eu estou com duas duvidas:

    1º: Como eu crio uma tela de login com nome de usuario e senha; que depois de ter entrado no sistema eu possa alterar senhas, adicionar ou remover usuarios,

    se alguem tiver um exemplo desse tipo vai ajudar bastante.

    2°: Enquanto eu estiver recebendo os dados pela serial, gostaria que aparecesse uma MessageBox.Show, com um ProgressBar, quando todos os dados forem carregados voltar para a tela principal.

    Se alguem tiver alguma dica, desde ja agradeço a atenção de todos. 

    quinta-feira, 20 de maio de 2010 14:04

Respostas

  • Gustavo,

     

    1) Sugiro que voce crie uma tabela no seu banco de dados que armazena os usuarios, e que voce crie um form com o botão de login que pesquise nessa tabela e verifique o acesso.

    Exemplo:

    http://www.daniweb.com/code/snippet217409.html

    OBS: Dentro do seu sistema voce coloca um configurador de usuários que tenham essas funcionalidades de alteração, adicionar ou remover.

    2) Segue um link de como utilizar a progressbar:

    http://www.macoratti.net/vbn_pb1.htm

    E para voltar a tela principal é só voce fechar as rotinas que estão sendo utilizadas.

     

    • Sugerido como Resposta Thiago MDTech quinta-feira, 20 de maio de 2010 14:21
    • Marcado como Resposta GustavoCarlos quinta-feira, 20 de maio de 2010 19:09
    quinta-feira, 20 de maio de 2010 14:21
  • Sem usar banco de dados vai ficar dificil....

    De alguma forma vc vai ter que armazenar essa senha. A mais simples talvez seja persistir um datatable em um arquivo XML e ao invez de gravar a senha, grave o HASH dela. Dai no momento da abertura do programa vc verifica se o hash da senha digitada é o mesmo do arquivo.. só um problema. se alguem deletar o arquivo pode ser que haja problema.... vc pode tratar isso de duas formas, ou trava o programa dizendo que houve uma tentativa de entrar no sistema ou força a criaçao do arquivo com uma senha padrao... mas todas as alternativas possuemm falhas..

     

    Veja como persistir um datatable

    http://msdn.microsoft.com/en-us/library/3hyx9hb4.aspx

    http://msdn.microsoft.com/en-us/library/fs0z9zxd(v=VS.100).aspx   note que o exemplo nao acessa nenhum banco de dados

    e como criar um hash de uma string

    using System.Security.Cryptography;
    using System.Text;
    //...
    public static byte[] GetPasswordHash(string password)
    {
    HashAlgorithm algorithm = SHA1.Create();
    byte[] data = Encoding.Unicode.GetBytes(password);
    return algorithm.ComputeHash(data);
    }

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    • Marcado como Resposta GustavoCarlos quinta-feira, 20 de maio de 2010 19:09
    quinta-feira, 20 de maio de 2010 15:04
    Moderador

Todas as Respostas

  • Gustavo,

     

    1) Sugiro que voce crie uma tabela no seu banco de dados que armazena os usuarios, e que voce crie um form com o botão de login que pesquise nessa tabela e verifique o acesso.

    Exemplo:

    http://www.daniweb.com/code/snippet217409.html

    OBS: Dentro do seu sistema voce coloca um configurador de usuários que tenham essas funcionalidades de alteração, adicionar ou remover.

    2) Segue um link de como utilizar a progressbar:

    http://www.macoratti.net/vbn_pb1.htm

    E para voltar a tela principal é só voce fechar as rotinas que estão sendo utilizadas.

     

    • Sugerido como Resposta Thiago MDTech quinta-feira, 20 de maio de 2010 14:21
    • Marcado como Resposta GustavoCarlos quinta-feira, 20 de maio de 2010 19:09
    quinta-feira, 20 de maio de 2010 14:21
  • Valew pelas dicas,

    Mas e se eu não precisar de usuario, somente de uma senha de acesso;

    Como eu faço para usar a senha para entrar e depois poder altera-la dentro da pagina principal, mas sem usar banco de dados.

    quinta-feira, 20 de maio de 2010 14:48
  • Sem usar banco de dados vai ficar dificil....

    De alguma forma vc vai ter que armazenar essa senha. A mais simples talvez seja persistir um datatable em um arquivo XML e ao invez de gravar a senha, grave o HASH dela. Dai no momento da abertura do programa vc verifica se o hash da senha digitada é o mesmo do arquivo.. só um problema. se alguem deletar o arquivo pode ser que haja problema.... vc pode tratar isso de duas formas, ou trava o programa dizendo que houve uma tentativa de entrar no sistema ou força a criaçao do arquivo com uma senha padrao... mas todas as alternativas possuemm falhas..

     

    Veja como persistir um datatable

    http://msdn.microsoft.com/en-us/library/3hyx9hb4.aspx

    http://msdn.microsoft.com/en-us/library/fs0z9zxd(v=VS.100).aspx   note que o exemplo nao acessa nenhum banco de dados

    e como criar um hash de uma string

    using System.Security.Cryptography;
    using System.Text;
    //...
    public static byte[] GetPasswordHash(string password)
    {
    HashAlgorithm algorithm = SHA1.Create();
    byte[] data = Encoding.Unicode.GetBytes(password);
    return algorithm.ComputeHash(data);
    }

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    SOGI INFORMATIQUE LTÉE (http://www.sogi.com)
    • Marcado como Resposta GustavoCarlos quinta-feira, 20 de maio de 2010 19:09
    quinta-feira, 20 de maio de 2010 15:04
    Moderador