contraseñas en delphi
hola¡¡ tengo que establecer un cierto control de acceso a partes del programa con contraseñas. Como puedo hacerlo??
Hola: Necesitas colocar una tablilla para que puedas registras las contraseñas. Una vez colocada la Tabla con sus respectivos campos, necesitas crear la forma que contendra ya sea uno, dos cajas de texto, una para localizar al usuario y otra para identificar su respuesta.. a la segunda caja de texto vas a localizar su propiedad PasswordChar en la cual puedes colocar el famoso asterisco o algun otro caracter. el pequeño codigo es el que sigue//////////////////////////////// begin if (txtUsuario.Text = '') or (txtPassword.Text = '') then begin Application.MessageBox ('Los datos de acceso están incompletos.' + #13 + 'Verifiquelos y vuelva a tratar','Atención!!', + mb_OK + mb_IconExclamation); if txtUsuario.Text = '' then txtUsuario.SetFocus else if txtPassword.Text = '' then txtPassword.SetFocus else if (txtUsuario.Text = '') and (txtPassword.Text = '') then txtUsuario.SetFocus; end else begin with Entrar do begin DataBaseName := ExtractFilePath(ParamStr(0)) + 'BDDUsuarios\'; Close; SQL.Clear; SQL.Add ('Select * from Usuarios Where Usuario = ''' + txtusuario.text + ''''); ExecSQL; Active := True; Open;
if FieldByName ('Usuario').AsString <> txtusuario.text then begin Application.MessageBox ('El nombre de usuario no está registrado', 'Atención!!', + mb_OK + mb_IconError); txtusuario.Text := ''; txtPassword.Text := ''; txtUsuario.SetFocus; Active := False; Close; end else begin if FieldByName('Password').AsString <> xttPassword.Text then begin Application.MessageBox ('El Password no es valido para este usuario', 'Atención!!', + mb_OK + mb_IconError); txtusuario.Text := ''; txtPassword.Text := ''; txtUsuario.SetFocus; Active := False; Close; end else begin Application.CreateForm(TVRegNac,VRegNac); Application.CreateForm(TVMenu,VMenu); VAcceso.Hide; VRegNac.ShowModal;
end; end; end; end; end;//////////////////////////////////////////////////Puede ser que este un poco confuso, pero aqui utilice un Query para generar la instruccion SQL... Espero no causarte un dolorcilo de cabeza. Y pasatela Cool... *** Hideki ***
if FieldByName ('Usuario').AsString <> txtusuario.text then begin Application.MessageBox ('El nombre de usuario no está registrado', 'Atención!!', + mb_OK + mb_IconError); txtusuario.Text := ''; txtPassword.Text := ''; txtUsuario.SetFocus; Active := False; Close; end else begin if FieldByName('Password').AsString <> xttPassword.Text then begin Application.MessageBox ('El Password no es valido para este usuario', 'Atención!!', + mb_OK + mb_IconError); txtusuario.Text := ''; txtPassword.Text := ''; txtUsuario.SetFocus; Active := False; Close; end else begin Application.CreateForm(TVRegNac,VRegNac); Application.CreateForm(TVMenu,VMenu); VAcceso.Hide; VRegNac.ShowModal;
end; end; end; end; end;//////////////////////////////////////////////////Puede ser que este un poco confuso, pero aqui utilice un Query para generar la instruccion SQL... Espero no causarte un dolorcilo de cabeza. Y pasatela Cool... *** Hideki ***
Crea una tabla con los siguientes campos Usuario - Contrasenia - ConfirmaContrasenia - NivelAcceso
luego creas un frm para la carga de datos de cada usuario con sus niveles. Crea otro form donde este sea el primero en la lista dee creación de form (project - opcion) en este form pone un componentee que refleje al usuario (dbgib?) y otro donde pueda escribir la contraseña, un par de botones aceptar y cancelar y en el evento onclick de aceptar rea un if para que relaciones usuario con contraseña si es true creas un Var determinando nivel y ese procedure pones lo enabled true los ccomponentes que queres que acceedan depende del usuario y else showmessaje ('Contaseña no válidad') si no es correcta. hay que tener presente los eventos deel form para que se cierrre toda la aplicación si intenta cerrar el form sin contraseña o con contraseña pero incorreect. Trate de ser lo más claro cualquier cosa escribime al correo [email protected] y te detallo con ejemplos. Suerte :)
luego creas un frm para la carga de datos de cada usuario con sus niveles. Crea otro form donde este sea el primero en la lista dee creación de form (project - opcion) en este form pone un componentee que refleje al usuario (dbgib?) y otro donde pueda escribir la contraseña, un par de botones aceptar y cancelar y en el evento onclick de aceptar rea un if para que relaciones usuario con contraseña si es true creas un Var determinando nivel y ese procedure pones lo enabled true los ccomponentes que queres que acceedan depende del usuario y else showmessaje ('Contaseña no válidad') si no es correcta. hay que tener presente los eventos deel form para que se cierrre toda la aplicación si intenta cerrar el form sin contraseña o con contraseña pero incorreect. Trate de ser lo más claro cualquier cosa escribime al correo [email protected] y te detallo con ejemplos. Suerte :)
