• Domingo 22 de Diciembre de 2024, 12:35

Autor Tema:  Limitar La Ejecucion  (Leído 3090 veces)

Makko

  • Miembro MUY activo
  • ***
  • Mensajes: 117
    • Ver Perfil
Limitar La Ejecucion
« en: Sábado 28 de Mayo de 2005, 02:56 »
0
Saludos amigos foreros.!  :rolleyes:
Me comunico con uds amigos, porque tengo un problema que a continuacion paso a explicar:
Tengo una aplicacion a la que me gustaria agregarle algo para que por ejemplo llegado una determinada fecha, ya no pueda ejecutarse mas.
Es decir, por ejemplo.. que a partir del dia 24-06-2005 cdo el usuario quiera ejecutar el .exe... le aparezca un MsgBox informandole que ya no es posible ejecutarlo.

Creo que puede hacerse mediante 2 formas.
Una seria que compare la fecha del PC con la que yo predetermine y cdo sea igual o la del PC mayor, ahi que aparezca el mensaje.
Otra seria metener algo en el Registro... para una mayor seguridad...

Bueno, espero que puedan darme una mano con esto.

Reciban todos un cordial saludo de quien les escribe.
Makko.  :hola:
Saludos.
Makko.

My life is a simple thing that would interest no one. It is a known fact that I was born and that is all that is necessary.

shakka

  • Miembro HIPER activo
  • ****
  • Mensajes: 679
  • Nacionalidad: cr
    • Ver Perfil
    • http://mbrenes.com
Re: Limitar La Ejecucion
« Respuesta #1 en: Sábado 28 de Mayo de 2005, 17:32 »
0
'//Puedes obtener a fecha usando la API mediante la funcion
Private Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Private Declare Sub GetLocalTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)

'//en ambos casos necesitas pasarle una variable del tipo SYSTEMTIME;
'/* esta seria su estructura: */
Private Type SYSTEMTIME
    wYear As Integer
    wMonth As Integer
    wDayOfWeek As Integer
    wDay As Integer
    wHour As Integer
    wMinute As Integer
    wSecond As Integer
    wMilliseconds As Integer
End Type

Private Sub UserForm_Load()
'/* declaras un variable de este tipo */
  Dim SysTime As SYSTEMTIME

  Dim FechaCaduca As String
  Dim FechaActual As String
 
  FechaCaduca = "28-5-05"

'//y obtener los datos mediante la funcion  GetLocalTime los cuales son pasados a  
  GetSystemTime SysTime
  FechaActual = CStr(SysTime.wDay & "-" & SysTime.wMonth & "-" & Mid(CStr(SysTime.wYear), 3, 2))
 
  If (Trim(FechaCaduca) = Trim(FechaActual)) Then
    Unload Me
'/* se vencio el tiempo para no se que ....?*/
  End If
End Sub


'/* je,je ...claro que puedes obtener la fecha de una forma muuuuucha mas sencilla con las funciones Day(), Month(), Year()... de Visual Basic */

espero que esto te ayude...

RadicalEd

  • Moderador
  • ******
  • Mensajes: 2430
  • Nacionalidad: co
    • Ver Perfil
Re: Limitar La Ejecucion
« Respuesta #2 en: Sábado 28 de Mayo de 2005, 17:40 »
0
Por que quieres hacer esto??? :angry:
A ver si ya sabes como debes hacerlo que necesitas, saber el codigo o que te lo hagan?

Si quieres una ayuda te doy las api's con las cuales podras programar en el registro.

RegCreateKey 'Crea una llave en el registro
RegDeleteKey 'La elimina
RegQueryValue 'Lee un valor del registro
RegSetValueEx 'Crea un valor en el registro
RegCloseKey 'Cierra una llave en el registro
RegOpenKey 'Abre una llave

Para archivos .INI
GetPrivateProfileString 'Lee info de un archivo .INI
WritePrivateProfileString 'Crea info en un archivo .INI

Para obtener el tiempo
GetLocalTime 'Obtiene el tiempo actual
GetFileTime 'El tiempo de creacion de un archivo, acceso y ultima modificacion
GetSystemTime 'El tiempo del sistema

Investiga en AllApi, que te dan buenas referencias de estas api's.

Ojala te sirva.
Chao

El pasado son solo recuerdos, el futuro son solo sueños

pmike

  • Miembro activo
  • **
  • Mensajes: 62
    • Ver Perfil
    • http://www.autoresponder.com
Re: Limitar La Ejecucion
« Respuesta #3 en: Sábado 28 de Mayo de 2005, 22:41 »
0
Hola

el codigo pasado por mbrenes en la linea
FechaCaduca = "28-5-05"
no se controla la fecha en si
se debería mirar el dia mes año por separado para q no supere realmente la fecha de caducidad

(era un pequeño detalle)
-------------------------------------------------------------

http://www.ebookred.com

-------------------------------------------------------------

Makko

  • Miembro MUY activo
  • ***
  • Mensajes: 117
    • Ver Perfil
Re: Limitar La Ejecucion
« Respuesta #4 en: Lunes 30 de Mayo de 2005, 19:20 »
0
Cita de: "RadicalEd"
Por que quieres hacer esto??? :angry:
A ver si ya sabes como debes hacerlo que necesitas, saber el codigo o que te lo hagan?

Si quieres una ayuda te doy las api's con las cuales podras programar en el registro.

RegCreateKey 'Crea una llave en el registro
RegDeleteKey 'La elimina
RegQueryValue 'Lee un valor del registro
RegSetValueEx 'Crea un valor en el registro
RegCloseKey 'Cierra una llave en el registro
RegOpenKey 'Abre una llave

Para archivos .INI
GetPrivateProfileString 'Lee info de un archivo .INI
WritePrivateProfileString 'Crea info en un archivo .INI

Para obtener el tiempo
GetLocalTime 'Obtiene el tiempo actual
GetFileTime 'El tiempo de creacion de un archivo, acceso y ultima modificacion
GetSystemTime 'El tiempo del sistema

Investiga en AllApi, que te dan buenas referencias de estas api's.

Ojala te sirva.
Chao

RadicalEd:
No te enojes de esa manera amigo.
No era para que me lo hagan, era para que me ven una idea o sugerencias nada mas.

En cuanto a tu pregunta de para que lo necesito te comento que es para una app que hice para mi Universidad sobre una materia llamada "Biologia de los Microorganismos". Y en esa app que hice, puse informacion, esctructuras y esquemas, ademas de un modulo interactivo donde el usuario puede interactuar (valga la redundancia) con el programa eligiendo por medio de CheckBox las opciones que quieras, y de acuerdo a las que estan tildadas te arroja unj resultado diferente.
Lo de la fecha es porque es a modo de prueba, seria una version BETA hasta que termine una version definitiva, y logre depurarla bien-bien.-

Eso es todo.
Yo creo que la gente... hablando se entiende... y me parece -desde mi punto de vista- que no habia necesidad de tratarme de esa manera.
Me hubieses preguntado de buen modo y todo seria diferente.
Como veras, en ningun momento yo en mi respuetsa te trate mal ni mucho menos...

De todos modos, agradezco tu ayuda.

Recibe un cordial saludo de quien te escribe.
Makko.

PD: Gracias a aquellos que respondieron con la buena intension de ayudar. Gracias.
Saludos.
Makko.

My life is a simple thing that would interest no one. It is a known fact that I was born and that is all that is necessary.

Cyclop

  • Miembro MUY activo
  • ***
  • Mensajes: 323
    • Ver Perfil
    • http://www.geocities.com/icotext/spanish/
Re: Limitar La Ejecucion
« Respuesta #5 en: Miércoles 1 de Junio de 2005, 23:13 »
0
Yo lo que hago es al instalar el software guardo la fecha actual + 30 dias osea la fecha de caducacion en un archivo binario dentro del directorio de window\system y cada vez que entro al programasimplemente comparo las fechas y voy actualizando el contador dentro de ese archivo.

La otra forma seria guardar el dato en modo binario dentro del EXE, hay una Api que te permite Freezar el EXE y añadirle datos, pero no me acuerdo cual es la rutina, una vez lo vi de reojo en un foro.

Salu2

Cyclopz
Icotext Evolution v0.5 para los amantes del ASCII Art
http]

Makko

  • Miembro MUY activo
  • ***
  • Mensajes: 117
    • Ver Perfil
Re: Limitar La Ejecucion
« Respuesta #6 en: Jueves 2 de Junio de 2005, 00:45 »
0
Gracias Cyclop  :rolleyes:

Saludos amigo...
Makko.  :hola:
Saludos.
Makko.

My life is a simple thing that would interest no one. It is a known fact that I was born and that is all that is necessary.