Bloqueur de compte-à-rebourds pour logiciels en version d'évaluation

Soyez le premier à donner votre avis sur cette source.

Vue 12 412 fois - Téléchargée 1 091 fois

Description

REJUVENATE v1.0
Prog/dev : Cyrus the great

Description :
-------------
Rejuvenate est un petit outil permettant de changer la date du système juste avant de lancer un EXEcutable. Pour ceux qui n'en voient pas l'utilité, cela permet en fait de bluffer certains logiciels d'évaluation limités à x jours de fonctionnement. Grâce à cet outil, il est possible de débrider cette limite de temps.

Fonctionnalités :
-----------------
Rejuvenate permet de lancer un EXEcutable en changeant la date système par la date de création de cet EXEcutable.

Optionnellement, il peut aussi remplacer la date système par :
- La date de dernière modification de l'EXEcutable
- La date de dernier accès de l'EXEcutable
- Une date spécifiée par vous

Utilisation :
-------------

- Rejuvenate.exe
>> Affiche l'aide en ligne de Rejuvenate

- Rejuvenate.exe appli.exe OU Rejuvenate.exe appli.exe -creationdate
>> Change la date système par la date de création de appli.exe et lance appli.exe

- Rejuvenate.exe appli.exe -lastmodificationdate
>> Change la date système par la date de dernière modification de appli.exe et lance appli.exe

- Rejuvenate.exe appli.exe -lastaccessdate
>> Change la date système par la date de dernier accès de appli.exe et lance appli.exe

- Rejuvenate.exe appli.exe -date:mm/dd/yyyy
>> Change la date système par la date indiquée et lance appli.exe

NB : La date système originale est restaurée après le traitement.

L'exécutable-cible ainsi que les paramètres optionnels étant spécifiés par la ligne de commande, il est donc préférable de créer un fichier batch pour lancer une application :

Exemple (dans le fichier "Launch.bat") :
@ECHO OFF
REJUVENATE.EXE MONPROG.EXE -CREATIONDATE

A propos du logiciel :
----------------------

Le principe exposé ici ne fonctionne pas avec tous les logiciels limités dans le temps. Mais il passe avec les deux logiciels dont j'avais besoin : Edge diagrammer et Advanced registry tracer. J'éspère qu'il en "déverrouillera" d'autres.

Special thanks :
----------------
Big Jim pour ses procédures d'extraction (très bien écrites d'ailleurs) de dates dans les fichiers.

Sur ce, bons bidouillages !

Cyrus the great

Source / Exemple :


Option Explicit

Sub Main()
Dim st(0 To 2) As SYSTEMTIME    ' EXE target system times (from API)

Dim changeDateMode As String    ' Mode used to change the system date
Dim cmdString As String         ' Command string containing the arguments
Dim EXEtarget As String         ' EXEcutable file to cheat with
Dim today As Date               ' Today date

' Set default values
changeDateMode = "creationdate"

' Memorize today date
today = Date

    ' Display software informations in case there's no command line
    If Command$ = "" Then
    Call MsgBox("REJUVENATE is an utility used to change the system date just before launching an EXEcutable file." + vbCrLf + _
    "The previous date is restored just after this operation." + vbCrLf + vbCrLf + _
    "Use : Rejuvenate.exe target.exe" + vbCrLf + vbCrLf + _
    "[-creationdate] : Change system date with the EXE target creation date <DEFAULT>" + vbCrLf + _
    "[-lastmodificationdate] : Change system date with the EXE target last modification date" + vbCrLf + _
    "[-lastaccessdate] : Change system date with the EXE target last access date" + vbCrLf + _
    "[-date:mm/dd/yyyy] : Change system date with the specified date" + vbCrLf _
    , vbInformation)
    End
    End If

    ' Set EXE target path
    If InStr(Command$, "-") = 0 Then
    EXEtarget = Command$
    Else
    EXEtarget = Left(Command$, InStr(Command$, "-") - 1)
    cmdString = UCase(Mid(Command$, InStr(Command$, "-"), Len(Command$) - InStr(Command$, "-") + 1))
    End If

    ' Analyse command string
    If InStr(cmdString, "-LASTMODIFICATIONDATE") <> 0 Then
    changeDateMode = "lastmodificationdate"
    End If
    
    If InStr(cmdString, "-LASTACCESSDATE") <> 0 Then
    changeDateMode = "lastaccessdate"
    End If
    
    If InStr(cmdString, "-DATE:") <> 0 Then
    changeDateMode = Mid(cmdString, InStr(cmdString, "-date:") + 1, 15)
    End If
    
    ' Exit if the EXE target is not valid
    If Dir(EXEtarget) = "" Then
    Call MsgBox("Target EXE doesn't exist", vbExclamation)
    End
    End If

    ' Change system date
    If GetFileTimes(EXEtarget, st(0), st(1), st(2)) Then
    
        If changeDateMode = "creationdate" Then
        Date = Str(st(0).wMonth) + "/" + Str(st(0).wDay) + "/" + Str(st(0).wYear)
        ElseIf changeDateMode = "lastmodificationdate" Then
        Date = Str(st(2).wMonth) + "/" + Str(st(2).wDay) + "/" + Str(st(2).wYear)
        ElseIf changeDateMode = "lastaccessdate" Then
        Date = Str(st(1).wMonth) + "/" + Str(st(1).wDay) + "/" + Str(st(1).wYear)
        ElseIf Left(changeDateMode, 5) = "date:" Then
        Date = Right(changeDateMode, 10)
        End If
    
    DoEvents
    End If

' Launch the EXE target
Shell (EXEtarget)

' Restore today date
Date = today

End Sub

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
26
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
4 juin 2008

Lamentable!!!!

déjà ont ne se fait pas avoir avec ce genre de système

et franchement t'a rien d'autre à faire que de faire des prog pour déplomber les autres!!!
Messages postés
7
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
19 décembre 2006

que penser? modifier la date du bios ne prends guère plus de temps,actuellement je me suis lancé sur un projet de travail de la base de registre ,il semble que tout part de là, alors a voir.
Messages postés
58
Date d'inscription
dimanche 7 décembre 2003
Statut
Membre
Dernière intervention
4 juillet 2006

Est ce que qlq un peu m'aider à trouver une solution pour bloquer mon app après x jours!
merci d'avance.
Messages postés
56
Date d'inscription
vendredi 17 octobre 2003
Statut
Membre
Dernière intervention
3 juillet 2005

Andouille, ne note pas dans ce cas-la !
Messages postés
44
Date d'inscription
samedi 30 novembre 2002
Statut
Membre
Dernière intervention
13 mars 2005

je sais pas si sa marche ...
j'ai mis 2/10 dsl mais j'ai pas de preuve !!
Afficher les 13 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.