Numéro de série par rapport au nom prenom
Publié : sam. 22/nov./2008 19:21
Voilà un petit code tout simple pour créer/vérifier un numéro de série pour vos logiciels. Il peut être complémentaire du code de Jacobus (LIEN ICI)
Vous pouvez tester avec
Nom d'utilisateur : Bob Bidule
Serial : 9b27B BE10B
Au pire, si vous mettez un autre nom, le logiciel copie le bon num de série dans le presse papier. (pour le test évidement)
Vous pouvez tester avec
Nom d'utilisateur : Bob Bidule
Serial : 9b27B BE10B
Au pire, si vous mettez un autre nom, le logiciel copie le bon num de série dans le presse papier. (pour le test évidement)
Code : Tout sélectionner
;Exemple simple de génération/vérification de numéro de série se basant sur le nom prenom de l'utilisateur
;Par Ar-S / 2008
Global CleXP$,a,b$,c$,e,f$,SERIALpart1$,SERIALpart2$,UserName$,SerialTape$
Enumeration
#win : #NameInput : #KEYinput : #Text_2 : #Text_3 : #BT_GO : #Font_BT_GO
EndEnumeration
Procedure Serial()
UserName$=GetGadgetText(#NameInput)
UserName$=Trim(UserName$) ; on enlève l'espace
SerialTape$=GetGadgetText(#KEYinput)
;//différents composants du serial se basant sur le nom de l'user du PC et sur le vrai nom et prenom de l'utilisateur
a=Len(UserName$) : b$=Left(UserName$,1) : c$=UCase(Right(UserName$,1)): d=a*3 : e=Len(UserName$)-1 : f$=LCase(Mid(UserName$,3,1))
SERIALpart1$=c$+Str(a)+b$ : SERIALpart2$=Str(d-3)+UCase(Mid(UserName$,3,3))
serial$=Trim(Str(e)+f$+SERIALpart2$+SERIALpart1$)
;//fin de la création du serial
If UserName$="" Or SerialTape$=""
MessageRequester("Erreur","Vous devez remplir les 2 champs",#MB_ICONWARNING)
Else
SetClipboardText(serial$) ; Copie le bon serial dans le presse papier - a supprimer évidement.
If SerialTape$=serial$
MessageRequester("Félicitation","Merci d'avoir acheté ce logiciel",#MB_ICONINFORMATION)
Else
MessageRequester("Erreur","Numéro de série éronée !",#MB_ICONWARNING)
EndIf
EndIf
EndProcedure
Procedure OpenWindow_Win()
If OpenWindow(#win, 641, 253, 365, 154, "Engesitrement via Serial", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
If CreateGadgetList(WindowID(#win))
StringGadget(#NameInput, 5, 45, 355, 20, "")
StringGadget(#KEYinput, 5, 95, 355, 20, "", #PB_String_BorderLess)
TextGadget(#Text_2, 5, 25, 60, 15, "Votre Nom :")
TextGadget(#Text_3, 5, 75, 120, 15, "Votre numéro de série :")
ButtonGadget(#BT_GO, 5, 125, 355, 20, "Enregistrer")
SetGadgetFont(#BT_GO, LoadFont(#Font_BT_GO, "Arial", 10, 16))
;PureCOLOR_SetButtonColor(#BT_GO, #PureCOLOR_SystemColor, $6FC2FB)
EndIf
EndIf
EndProcedure
OpenWindow_Win()
Repeat
Select WaitWindowEvent()
Case #PB_Event_Gadget
Select EventGadget()
Case #BT_GO
Serial()
EndSelect
Case #PB_Event_CloseWindow
Select EventWindow()
Case #win
CloseWindow(#win)
Break
EndSelect
EndSelect
ForEver