Code : Tout sélectionner
; Mode Evaluation 30 jours d'un programme
; Jacobus 22/11/2008 pour PB 4.20
Enumeration
#win
#Text
#Btn
EndEnumeration
#MonProgramme = "Mon Super Soft"
Global Endday$, date$
date$ = FormatDate("%dd/%mm/%yyyy", Date()) ;date du jour
Endday$ = "30/11/2008" ;date limite à modifier pour tester
;Endday$ = "13/11/2008"
;Il vous reste à gérer l'intégration dans l'appli, soit dans l'exe soit dans le registre ou autre...
Procedure Evaluation(Year.l,Month.l)
If date$ = Endday$
MessageRequester("Période d'essai", "Dernier jour d'utilisation!", #MB_ICONEXCLAMATION)
Test = #True
Else
For d = 1 To 1000 ;sur environ 3 ans
Jourplus$ = FormatDate("%dd/%mm/%yyyy", AddDate(ParseDate("%dd/%mm/%yyyy", Endday$), #PB_Date_Day, d))
If date$ = Jourplus$
MessageRequester("Période d'essai", "Impossible de démarrer "+#MonProgramme+Chr(13)+"l'évaluation est terminée depuis "+Str(d)+" jour(s)", #MB_ICONERROR)
End ; à décommenter (commenté pour les tests)
Test = #True
Break
EndIf
Next
EndIf
If Test = #False
j$ = FormatDate("%dd", Date())
For ud = 1 To 31
Result = Day(Date(Year, Month, Val(j$), 0, 0, 0))
If Result
value.l = 31 - Val(Str(Result))
MessageRequester("Période d'essai", "Votre version d'évaluation sera encore fonctionnelle durant "+Str(value)+" jour(s)"+Chr(13)+""+Chr(13)+"Merci d'avoir choisi "+#MonProgramme, #MB_ICONINFORMATION)
Break
EndIf
Next
EndIf
EndProcedure
;test
Evaluation(2008,11)
If OpenWindow(#win,0,0, 400, 300,#MonProgramme, #PB_Window_SystemMenu|#PB_Window_ScreenCentered)=0 Or CreateGadgetList(WindowID(#win))=0
End
EndIf
TextGadget(#Text, 20,20,360,100,"Ceci est un test, vous pouvez cliquer sur fermer, merci.",#PB_Text_Center)
ButtonGadget(#Btn,150,200,100,25,"FERMER")
Repeat
Event = WaitWindowEvent()
If Event = #PB_Event_Gadget
Select EventGadget()
Case #Btn : Quit = 1
EndSelect
EndIf
Until Quit
Event = #PB_Event_CloseWindow
End
