Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Me parece, si no entiendo mal, que la clave esta en el programa.
Si es asi, no me parece una buena alternativa.
Por que no poner la clave en una base de datos y encriptarla en tal caso.
Yo lo que hago es abrir el form principal y en este llamar al loguin, si la clave es correcta se visualiza el form principal, de lo contrario se cierra todo, ah, la clave la mantengo en la base de datos.
Saludos
Responder Con Cita
  #2  
Antiguo 03-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola, a mi lo que me sigue intrigado es el porque ese motivo de lanzar un exe.

Si se trata de mostrar una form... ¿para que ese Shellexecute?
Me parece que te estas mareando en un vaso de agua. Hay cosas que no me termino de explicar ese comportamiento.

Por favor muestranos el código como lo tienes.

He armado un ejemplo ultra simple de un login. El usuario es "usuario", y la clave es "clave". Si te fijas, una vez que se ingresa, guardo en una variable bandera de que el usuario ha sido validado. Dependiendo de este valor se muestra el form de logueo o no.

En la sección FTP del club hay un ejemplo un tanto más complicado.

Me gustaria que nos detalles explícitamente como estas mostrando tus forms. ¿Usas Show? ¿liberas la memoria una vez que las creas?

Saludos,
Archivos Adjuntos
Tipo de Archivo: zip DJerez.zip (3,1 KB, 15 visitas)
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 03-08-2008
Avatar de Black_Ocean
Black_Ocean Black_Ocean is offline
Miembro
 
Registrado: nov 2006
Posts: 128
Poder: 18
Black_Ocean Va por buen camino
Hola [Delphius], sólo le quería avisar de que al parecer olvidó incluir el archivo Unit1.dfm en el zip, que corresponde al formulario de la Unit1.pas, por lo que, el usuario que preguntó no podrá compilar ni tampoco testear el ejemplo que usted ha puesto aquí.

Saludos.

Última edición por Black_Ocean fecha: 03-08-2008 a las 11:08:10.
Responder Con Cita
  #4  
Antiguo 03-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por Black_Ocean Ver Mensaje
Hola [Delphius], sólo le quería avisar de que al parecer olvidó incluir el archivo Unit1.dfm en el zip, que corresponde al formulario de la Unit1.pas, por lo que, el usuario que preguntó no podrá compilar ni tampoco testear el ejemplo que usted ha puesto aquí.

Saludos.
Muchas gracias por avisar.
Aqui adjunto el archivo que falta. Disculpen.

Saludos,
Archivos Adjuntos
Tipo de Archivo: zip Unit1.zip (524 Bytes, 9 visitas)
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #5  
Antiguo 03-08-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
¿No tendrás la ventana de login en autocreate Forms? (en delphi, Project -> Options, debes quitarlo de la lista de autocreate y pasarlo a "available forms'.

Apunto este detalle porque dices que se muestra 2 veces (una la creas tú con Login := TLogin.Create(Self) y la otra la crea delphi porque está en formularios autocreados).

Yo el login lo haría así:
Código Delphi [-]
var salir:boolean;
begin

Login := TLogin.Create(Self);
Try
 if Login.ShowModal = mrcancel then
   salir := true;
Finally
Login.Free;
if salir then 
  Application.Terminate
else
  ShellExecute('administracion.exe'.....)

Como se suele decir: "cada cosa para su cosa".

La ventana de login: Cuando el usuario pulsa aceptar y validas la contraseña, deberías asignar la propiedad ModalResult de dicha ventana:
Código Delphi [-]
procedure Tlogin.BotonOkClick(...);
begin
 if  constasena = 'noteenojes' then
   ModalResult := mrOk
 else
  ModalResult := mrcancel
end;

La aplicación principal: muestra la ventana de login y según el resultado termina la aplicación o bien ejecuta la administracion.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 04-08-2008
Avatar de 2-D@monic
2-D@monic 2-D@monic is offline
Miembro
 
Registrado: may 2007
Posts: 94
Poder: 18
2-D@monic Va por buen camino
pregunta

Cita:
Empezado por Caral Ver Mensaje
Hola
Me parece, si no entiendo mal, que la clave esta en el programa.
Si es asi, no me parece una buena alternativa.
Por que no poner la clave en una base de datos y encriptarla en tal caso.
Yo lo que hago es abrir el form principal y en este llamar al loguin, si la clave es correcta se visualiza el form principal, de lo contrario se cierra todo, ah, la clave la mantengo en la base de datos.
Saludos
Una pregunta acerca del login............ para almacenar las contraseñas, utilizas una tabla en donde almacenes el id y el password? o utilizas los login's en entrada al manejador (o sea creas usuarios en el manejador dándoles roles).
__________________
Soy pésimo en lo que mejor hago y por eso me siento bendecido.
Responder Con Cita
  #7  
Antiguo 05-08-2008
Avatar de DJerez
DJerez DJerez is offline
Miembro
 
Registrado: ago 2008
Posts: 12
Poder: 0
DJerez Va por buen camino
Súper gracias!

Ante todo gracias por la paciencia y la atención dispensada, es lo mejorcito que he encontrado en foros y las ayudas sobran, cosa que no veo mucho en otros (No me refiero a los de programación solamente). Y gracias por ayudar a un novato en programación a aprender un poco más.

Delphius:

Acabo de bajar el (Los).zip del ejemplo de login, lo probé y me resulta interesante la idea y mucho más práctica que la de abrir el .exe con el propio... .exe (), respecto al código no lo miré con detenimiento pero algo que no tomé en cuenta antes es esto:

Código:
  inc(intento);
  ...
  if (intento = 5)
     then Application.Terminate;
O sea, terminar la aplicación en "x" intentos fallidos.
Absolutamente mucho mejor de lo que estaba intentando.

Gracias.

[Lepe]:

Probé la idea que das del login me funcionó sin problemas... pero:
Cuál es el problema con esta opción que es la que implemento ahora?
(Si bien el login no aparece más al validar la clave...)

Si ingreso la clave, ingreso al programa, si la dejo en blanco o me equivoco, cierra todo... pero que pasa si presiono ALT+F4? Catrina de chanes!!! Se cierra SOLO el login y me abre la aplicación principal!
Intenté probando las soluciones de que no se permita usar ALT+F4 durante la ejecución de la aplicación, pero no logro hacerla funcionar a esa solución, pero eso está fuera de este tópico.

Gracias.

[Caral]
:

Si, precisamente, la pass está en el programa. Y la idea de volcarla en una base de datos y encriptarla hace que sea más seguro. Algo que no tomo en cuenta para la aplicación que estoy haciendo ya que no requiere demasiada seguridad, solo restringir el acceso con Clave (Ni siquiera usuario) a la aplicación Administración. De todas formas voy a leer al respecto.

Gracias.

//***********************************************
En conclusión:
El tema de que el tópico está bastante hablado (Debo darle la razón a Delphius) es cierto, el tema es que no encontré algo paso a paso como para darme cuenta en donde meter un código y en donde meter el otro (O mi capacidad mental no está a pleno). Ahora que estuve viéndolo directamente en el Delphi, puedo comprenderlo más.
Estoy más que agradecido por las ideas y la ayuda de todos, hasta la de Black_Ocean, que me evitó un post reclamando la Unit1 del proyecto de Delphius!

Voy a volcarme a trabajar con la opción de Delphius, me evita el dolorcito de ojos frente al monitor viendo como lidiar con el ALT+F4... como siempre, seguro debe ser una tontera.

GRACIAS

Saludos.
__________________
"Cada minuto que pasa es una oportunidad más para cambiarlo todo."
Responder Con Cita
  #8  
Antiguo 05-08-2008
cjmatador cjmatador is offline
Miembro
 
Registrado: ene 2008
Ubicación: La Paz Bolivia
Posts: 24
Poder: 0
cjmatador Va por buen camino
djerez

yo te recomiendo que si es uno de tus primeros programas en delphi
crees primero el form que te pide el login y password y luego añadas el form principal, yo tenia los mismos problemas al inicio pero de a poco los iras resolviendo, no desesperes.

En cuanto a delphius amigo paciencia con djerez, creo que no tengo muchos posts en el foro pero leo con mucha atencion todas las ayudas que ya se encuentran en algun foro y generalmente con ellas resuelvo mis dificultades, y en la gran mayoria tus posts me ayudaron mucho saludos sigue adelante.

UN DICHO

CON PACIENCIA Y SALIVITA, UN ELEFANTE SE TIRA UNA HORMIGUITA.

SALUDOS.

PD. TIRA=F.O.L.L.A.R.
SIN MALA HONDA NI FALTAR EL RESPETO A NADIE
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
login y logout para base de datos _CALI Conexión con bases de datos 1 22-04-2008 16:23:03
Login para PHP doradose PHP 2 18-01-2008 21:18:11
Aplicación MDI con LOGIN ( problema ) BlackDaemon OOP 15 07-03-2007 05:45:53
Ayuda Con Ventana Para Login!!! jugomez MS SQL Server 5 23-10-2006 17:22:29
Aplicacion Antes Del Login De Windows omardelahoz Varios 2 22-06-2004 16:29:48


La franja horaria es GMT +2. Ahora son las 03:20:52.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi