[..] limiter l'utilisation d'un script

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Oxygene31
Niveau 2
Niveau 2
Messages : 26
Enregistré le : sam. 18 avr. 2009 16:36
Status : Hors ligne

[..] limiter l'utilisation d'un script

#1

Message par Oxygene31 »

Salut à tous !!

Existe t'il une ligne de code permettant de rendre un script à durée limitée ?
J'aimerais faire un script en version d'essai limité à x jours ou x utilisation.
Merci de vos réponses
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#2

Message par Iste »

Ben, avec une clef registre... mais bon, c'est pas tres open tout ca !

tu peux utiliser la fonction RegWrite() pour ecrir dans le registre la date de premiere utilisation, et/ou RegRead() pour comparer avec la date actuel, ou bien compter le nombre d'utilisaton.

Voila, j'ai pas d'autre solution
Signez ici
Oxygene31
Niveau 2
Niveau 2
Messages : 26
Enregistré le : sam. 18 avr. 2009 16:36
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#3

Message par Oxygene31 »

Donc faire un truc du genre

Code : Tout sélectionner

$dateu  ;étant la date de la 1ere utilisation
$date ;étant la date actuelle

RegWrite($dateu ) ;(faudra que je regarde la fonction exace pour mettre la date :) )

If RegRead($date) = RegWrite($dateu+20 ) Then
Exit  ;sortie si utilisation 20 jour après
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#4

Message par Iste »

moui en gros c'est ca... enfin, faut quand meme vérifier avant qu'il ny a pas de date déja ecrit !

Code : Tout sélectionner

#Include <Date.au3>

$date = RegRead ("keyname","valuename") ; on essaye de lire la date
If Not @error = 0 Then 
    RegWrite ("keyname","valuename","",@YEAR&"/"&@MON&"/"&@MDAY);si on peut pas => 1er utilisation, donc on ecrit
Else
    If _DateDiff ("D",$date,@YEAR&"/"&@MON&"/"&@MDAY) > 30 Then MsgBox("","","ca fait plus de 30 jours")
EndIf
Signez ici
Oxygene31
Niveau 2
Niveau 2
Messages : 26
Enregistré le : sam. 18 avr. 2009 16:36
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#5

Message par Oxygene31 »

Oki par contre je ne vois pas dans ton script la fonction "exit" qui quitte le script si le délais est dépassé.
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#6

Message par Iste »

ben non, moi j'ai juste mis une msgbox(). Un exit pur risque de... faire encore plus tache
"L'ideal" étant une fenetre qui dise comment obtenir une version non limitée
Signez ici
Oxygene31
Niveau 2
Niveau 2
Messages : 26
Enregistré le : sam. 18 avr. 2009 16:36
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#7

Message par Oxygene31 »

C'est vrai que ça serait plus classe.
Je mettrai un splash qui dit comment avoir la version illimitée :) suivi d'un exit (car ma priorité est la fermeture du script)
Je vais essayer de me débrouiller avec ça :)
Merci pour ton aide !!
Oxygene31
Niveau 2
Niveau 2
Messages : 26
Enregistré le : sam. 18 avr. 2009 16:36
Status : Hors ligne

Re: [..] limiter l'utilisation d'un script

#8

Message par Oxygene31 »

Je n'ai pas eu le temps de revenir sur mon problème donc je n'ai pas encore testé les regwrite nd co ^^

J'ai fait un script plus simple avec un compte rebour. On peut utiliser le script autant de foi que l'on veut mais celui-ci à une durée limitée.
J'ai ajouté un tool tip indiquant le temps restant avant fermeture.
Cela donne un script du genre :

Code : Tout sélectionner

#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 159, 125, 193, 115)
$Button1 = GUICtrlCreateButton("Button1", 32, 40, 81, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

Global $i

func fermeture()
    For $i=10 To 0 Step -1
        Sleep(1000)
        ToolTip("le programme se fermera automatiquement dans "&$i&" secondes",0,10)
    Next
    MsgBox(0,"Annonce","Pour profiter de ce programme en illimité activer votre compte premium")
    Exit
EndFunc
 
While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit
        Case $Button1
            fermeture()
    EndSwitch
WEnd
 
Répondre