Sugerencia
Publicado por Jorge Luis (91 intervenciones) el 27/11/2002 18:34:19
saludos a todos.
Es muy buena la solución propuesta por Milson, solo tengo una sugerencia adicional, acerca de consultar la fecha actual y la de vencimiento, ya que la función Today() devuelve la fecha de la máquina y si la cambian ya no se puede controlar (Si caduca el 26 de septiembre, simplemente retrocedo a la fecha 25).
En lugar de utilizar la fecha como referencia puede utilizar los segundos transcurridos, desde que se instaló la aplicación o se ingresó el password, para esto debes tener un lugar en la base de datos o en archivo txt (mejor si está encryptado), donde almacenarás el tiempo utilizado.
En el evento OPEN de la ventana principal consulto el valor del último registro del contador asignándole a una variable global gi_contador, envío como parámetro Timer(1) para que se ejecute cada segundo,
En el evento Timer sumo una variable global gi_contador++ y pregunto si es menor a 2592000 (los segundos de 30 días) caso contrario ejecuto los procedimientos necesarios (puede ser Desconectar la base o cerrar la aplicación). Yo lo utilizo así para versiones Trial demostrativas y funciona bien.
Sobre el primer caso no estoy muy seguro de que sea “infalible”, pero yo trabajo con archivos dll (auque no hagan nada) pero que estén ubicados en lugares específicos, que sólo se lo hace con la licencia en el instalador, de esta manera si quieren copiar el ejecutable a otra máquina despliega un error de función externa.
Espero que te sirva de algo
Es muy buena la solución propuesta por Milson, solo tengo una sugerencia adicional, acerca de consultar la fecha actual y la de vencimiento, ya que la función Today() devuelve la fecha de la máquina y si la cambian ya no se puede controlar (Si caduca el 26 de septiembre, simplemente retrocedo a la fecha 25).
En lugar de utilizar la fecha como referencia puede utilizar los segundos transcurridos, desde que se instaló la aplicación o se ingresó el password, para esto debes tener un lugar en la base de datos o en archivo txt (mejor si está encryptado), donde almacenarás el tiempo utilizado.
En el evento OPEN de la ventana principal consulto el valor del último registro del contador asignándole a una variable global gi_contador, envío como parámetro Timer(1) para que se ejecute cada segundo,
En el evento Timer sumo una variable global gi_contador++ y pregunto si es menor a 2592000 (los segundos de 30 días) caso contrario ejecuto los procedimientos necesarios (puede ser Desconectar la base o cerrar la aplicación). Yo lo utilizo así para versiones Trial demostrativas y funciona bien.
Sobre el primer caso no estoy muy seguro de que sea “infalible”, pero yo trabajo con archivos dll (auque no hagan nada) pero que estén ubicados en lugares específicos, que sólo se lo hace con la licencia en el instalador, de esta manera si quieren copiar el ejecutable a otra máquina despliega un error de función externa.
Espero que te sirva de algo
Valora esta pregunta
0