Le TUTO continue est dans ce nous tutoriel, voyons ensemble comment généré une clé d'activation a partir du numéro de Série Généré... WINDEV - TP1 POO : Générer et Récupérer le numéro série : https://youtu.be/hUXxOOlrgyg
Explication des quelques fonction
1) Crypte (Fonction): Crypte une chaîne de caractères sous forme binaire ou sous forme ASCII.
Code-Source Class_Info
Class_info est une Classe
PUBLIC
m_sNuméroSerie est une chaîne
m_sNomCarteMere est une chaîne
m_sNuméroBios est une chaîne
m_sVersionApplication est une chaîne
m_bufCleBuffer est un Buffer
m_sNuméroFinal est une chaîne
m_sClécorrect est une chaîne
m_sClésauvegarde est une chaîne
FIN
PROCÉDURE Constructeur()
m_sNuméroSerie = m_sNomCarteMere + m_sNuméroBios + m_sVersionApplication
m_sNuméroSerie = Crypte(m_sNuméroSerie,"clé")
m_bufCleBuffer = HashChaîne(HA_HMAC_MD5_128,m_sNuméroSerie)
POUR i = 1 À Taille(m_bufCleBuffer)
m_sNuméroSerie += NumériqueVersChaîne(Asc(m_bufCleBuffer[[i]]),"02X")
FIN
TANTQUE Taille(m_sNuméroSerie) > 0
SI Taille(m_sNuméroSerie) = 32 ALORS
m_sNuméroFinal = Gauche(m_sNuméroSerie,4)
SINON
m_sNuméroFinal += "-"+ Gauche(m_sNuméroSerie,4)
FIN
m_sNuméroSerie = Droite(m_sNuméroSerie, Taille(m_sNuméroSerie)-4)
FIN
FEN_Cles_Activation.SAI_Numéro_de_série = m_sNuméroFinal
PROCÉDURE Activation(NumSerieGenere, NumSerieCopier)
SI NumSerieGenere <> NumSerieCopier ALORS
Info("Votre numéro de série n'est pas correct")
SINON
m_sClécorrect = Crypte(m_sNuméroFinal,"cle",crypteAnsi,encodeBASE64)
m_sClésauvegarde = ChargeParamètre("UneCle","0")
FEN_Cles_Activation.SAI_CleGeneree = m_sClécorrect
FIN
PROCÉDURE SauvegardeParamètre(CleGenere)
SauveParamètre("UneCle",CleGenere)
Info("Votre Activation à Réussit")
PROCÉDURE Destructeur()
Code-Source Boutton Généré
clClActivation est une Class_info
clClActivation.Activation(SAI_Numéro_de_série, SAI_Entrer_N_série)
Code-Source Boutton Activer
clActiveSucces est une Class_info
clActiveSucces.SauvegardeParamètre(SAI_CleGeneree)