![]() |
Problema para asegurar mi software
Hola compañeros del foro, estoy tratando de ponerle un pequeño codigo de seguridad, este es el codigo:
como ven en el codigo en la base de datos tengo un campo con una fecha especifica, trato de calcular que si la fecha de hoy es igual al que esta en la base de datos y mandar un mensaje y cerrar el programa, sino es asi sale la ventana de login, pero no me esta funcionando, me sale este error: Cita:
Saludos. |
Hola enecumene,
¿En que línea te da error? ¿Te aseguraste de que esté la conexión establecida, y/o abiertas las tablas que empleas? Me llama la atención el hecho de que te un error... a simple vista no veo problema alguno... ¿seguro que el error proviene de allí? Saludos, |
Ahh Jodienda, la tabla estaba Cerrada :D, habia advertido que mis neuronas no estaban funcionando hoy, pero de igual manera no me esta haciendo la comparacion, en el campo tengo la fecha de hoy y me sale la ventana de login en vez del mensaje, que puede ser?
|
enecumene, la verdad es que no te sabría decir... ¿Estás seguro que en la tabla tenés guardada dicha información?
No veo problema en tu código, y como no tengo algo a mano con que practicar... no puedo simular la prueba. Ahora, si me permites mi humilde opinión en cuanto a la seguridad que tu deseas hacer... Sería recomendable que ese tipo de comparación y dicha información no se guarde en la base de datos... sobre todo si es access. Ya que resulta fácil con Access abrir el archivo, abrir la tabla y modificarlo a mano. Lo ideal es que esa información para comparar es que la guardes en algún archivo oculto... en el registro de Windows o algo por el estilo. Saludos, |
Cita:
Si estas usando ese codigo para proteger tu software, facilmente cualquiera podria usar un editor de Ejecutables como el OllyDebuger o cualquiera de esos y violar dicha seguridad facilmente... Edito: Ademas de la razón que te ha dado Delphius... Por otro lado, si decides que no necesitas tanta seguridad en tu aplicativo, el problema que acabas de comentar se da porque la fecha que tienes en dicho campo es igual pero la hora no, seguramente nunca sera igual, ya que en la BD debe ser 00:00:00 pero la estas comparando con un Now que te devuelve la Hora ademas de la fecha, por lo que esta linea...
Debes cambiarla por esta...
Espero te sirva ;). |
Cita:
Si no es molestia amigo Jhonny, ¿a que te refieres cuando dices que se puede violar ese aspecto de seguridad con un Editor de Ejecutables? Escuché hablar de editores hexadecimales... pero ese bicho que tando daño puede hacer? Saludos, |
Vale, gracias por los consejos de Vos, johnny, aun asi no me funciono, la fecha en el campo no guarda horas solo la fecha, puede ser?
|
Cita:
|
Cita:
Yo lo que alguna vez hice (ya no instalo DEMOS) era contar los dias usados metiendo un archivo en algun directorio de windows y no comparar fechas, pero, pues el que quiera piratear encontrará la forma de hacerlo. Salud OS |
Cita:
Mira, vos instalas ese programa, solo le dices que quieres abrir un ejecutable y él te muestra muchos 1 0 y caracteres extraños, entre todos esos caracteres extraños, podras ver pedazos de codigo, por ejemplo... - Si tu tienes un TDataBase, y en él haz colocado el usuario y la contraseña de la BD, luego podras verlo por medio de estos programitas. - Creo haber leido en alguna parte que si vas a modificar algo tendras que usar la misma cantidad de caracteres que tenia anteriormente, osea que si alguien abre el ejecutable de enecumene con un programa de estos y logra ver que en alguna parte dice algo como...
Podra, cambiar el > por un < y violaria esta seguridad facilmente. Con esos programas tambien se logran modificar DCUs, BPLs y cosas por el estilo. Si se decide que el programa debe llevar uno de estos sistemas de seguridad, es mejor pensar muy bien como desarrollar este asunto. |
Hola enecumene, te aseguras de darle formato a Now para que coincida con la que tienes guardada en la BD ?? aaaa/mm/dd
Cita:
Cita:
|
Cita:
Saludos. |
Cita:
Prueba cambiando el Now por el Date a ver si te funciona ;). Si no pues debe ser algo mas que realmente no se me ocurre ahora :(. |
Cita:
|
Cita:
|
Si lo pruebas con el Breakpoint (F5 en la linea de codigo), puedes verificar que ambas partes de la condicion esten asi ??...
Ademas teniendo en cuenta lo que dijo egostar, yo me pregunto... tiene que con fecha, o podria ser con un numero determinado de dias. Bueno teniendo en cuenta que no se cual es tu idea y que la respeto claro esta :p Edito: Bueno... pues si ya lo solucionaste, almenos tuviste buena audiencia :D |
Cita:
Una hora basto, para que tus neuronas se jodieran :D:D:D Salud OS |
Cita:
|
Cita:
Yo admito que tengo un Editor Hexadecimal, para poner a prueba los programas que hice, e invadido por la curiosidad. Me sorprendió el hecho de que con eso se podía leer fácilmente los resourcestring, algunos Labels, mensajes a usuarios y otras cosas... pero código no se vé. No me animé a modificar nada, pero si estuve viendo un poco. Cita:
Recuerdo que un dia mientras estaba navegando llegué a unos hilos que hablaban de unos componentes que cifran los ejecutables... pero por seguridad y un poco de miedo no lo he probado. Al igual que Jhonny, sugiero que Enecumene analize mejor el tema de la seguridad. Si es que está entre sus planes incorporar mejores medidas. Saludos, |
Cita:
|
La franja horaria es GMT +2. Ahora son las 17:19:29. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi