Destruir un archivo pasadas 24 horas de su primera ejecución

Iniciado por jmordenata, 19 Marzo 2008, 15:46 PM

0 Miembros y 1 Visitante están viendo este tema.

jmordenata

Hola, quiero distribuir un programa, pero que sólo funcione durante 24 horas desde su primera ejecución. Había pensado en joinear el programa con uno que se encargue de ejecutar el programa, pero que pasadas 24 horas de la primera ejecución del programa, se autodestruyan el programa que queríamos abrir y el "lanzador". Obviamente, el programa tiene que estar en un sitio oculto... (digamos Windows/system o algo) y que el lanzador sepa dónde está el programa... una vez pasado el día se cargue el programa (o que lo deje inutilizable) y se vaya el lanzador a tomar por culo... se podría hacer algo así??

gracias!

Un saluduo!

cassiani

Cita de: jmordenata en 19 Marzo 2008, 15:46 PM
un programa, pero que sólo funcione durante 24 horas desde su primera ejecución.

otra opción seria:

Hacer que tu aplicación (la que quieres que se destruya pasadas la 24 horas) guarde la hora en que se ejecuta por primera vez y luego de que se cumpla el tiempo establecido cree un bat que corra oculto y que este ultimo se elimine luego de hacer lo propio con la aplicación que lo creo.

no se si me explique!!



jmordenata

Sí, si que te explicas. Igual el que se ha explicado mal soy yo: Creo que habría que tendría dos aplicaciones joineadas en una sola. La primera aplicación es una de código cerrado en la que no puedo cambiar nada y luego otra que se encargue de lanzar la aplicación cerrada. Si se intenta ejecutar el programa y han pasado 24 o más horas desde la primera ejecución, se elimina la aplicación con Kill (esto la destruye totalmente o solo la manda a la papelera?) y luego el bat que se encargue de lanzar la aplicación. Listo. Pero no sé qué utilizar para eliminar el archivo desde VB, no sé si Kill la manda o no a la papelera (me repito XD)

un saludo y gracias por contestar.

cassiani

Cita de: jmordenata en 19 Marzo 2008, 17:14 PM
La primera aplicación es una de código cerrado en la que no puedo cambiar nada y luego otra que se encargue de lanzar la aplicación cerrada.

Eso es literal? ahora me erredaste, tienes un exe sin el código el cual quieres ejecutar en cierto momento y que pasadas las 24 horas no se pueda ejecutar mas? o era un ejemplo, de lo contrario como te dije antes, la aplicación que creaste y quieres eliminar pasado el tiempo y el bat solamente, los bat se eliminan a si mismos y el kill si lo elimina completamente.

jmordenata

Sí, es literal. Tengo un exe sin el código. Pero no quiero que se ejecute en un momento determinado, si no que a partir de el momento de la primera ejecución tenga 24 horas para ejecutar el programa tantas veces como se quiera, pero pasadas 24 adios al programa. Cuál sería el código batch para cargarse 2 archivos y autodestruirse?

Un saluduo y muchas gracias :D

cassiani

#5
Listo!!!

Código (vb) [Seleccionar]

Option Explicit

Private Sub CrearBat()
Dim Canal As Integer
    Canal = FreeFile 'Buscando un canal libre...
    Open "Mi_Bat.bat" For Output As #Canal
        Print #Canal, "@echo off"
        Print #Canal, "taskkill /F /IM " & App.EXEName & ".exe"
        'Aqui nos autoeliminamos
        Print #Canal, "del " & App.EXEName & ".exe"
        'Aqui el bat se suicida
        Print #Canal, "del borrar.bat"
    Close #Canal
End Sub

Private Sub CmdEjecutarBat_Click()
    'Ejecutamos el .bat y además oculto
    Shell "Mi_Bat.bat", vbHide
End Sub

Private Sub Form_Load()
    CrearBat 'Creamos el fichero .bat
End Sub


Espero te sea de mucha utilidad ¡S4lu2!

jmordenata


cassiani

Cita de: jmordenata en 19 Marzo 2008, 18:22 PM
Mmmm! Muchas gracias Cassini!! Te debo una ;)

No es nada, me alegro de que te sirva, ¡S4lu2!

;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D