Bonjour tout le monde )) Je vous présente la solution pour protéger vos logiciels par dongle Dans mon cas , j'ai acheter un dongle "Rockey2" 1) pour l'utiliser , on déclare globalement Code (Text): // Dongle Rockey2 pour sécurisé // Handle est la valeur retournée par les fonction // UID est la valeur générer par la foction GenUID // isProtected pour protéger la clé par écriture handle,nUid,nIsprotect est un entier nDword est un entier sur 8 octets // sEed est un chaîne="123456789" // utiliser pour générer l'UID pour la clé sBuffer512 est un Buffer on 512="Aitee informatique" // Contient chaine a écrire sur la clé nChan est un entier=3 // indexe sur block [0-5] 2) dans la fenetre pour parametrer votre dongle Code (Text): // Lire le DLL contenant les fonctions de dongle hInst est un entier hInst = ChargeDLL("W:\Downloads\Compressed\rockey2_v2.41_20130620\V2.40-20121114\Samples\ASP_C#.net\VS2008\dll\Bin\Rockey2.DLL") SI hInst = 0 ALORS Erreur(ErreurInfo()) SINON Trace("DLL chargée") FIN //Chercher le dongle res est un entier=API("Rockey2.dll", "RY2_Find") SI res<0 ALORS //en cas d'erreur Trace("erreur ; code d'erreur : "+EntierVersHexa(res)) SINON SI res=0 ALORS Trace("erreur aucun dongle trouvé") SINON Trace("Dongle trouvée )) "+res) // res contient le num de dongle 1 ou 2 ... si plusieurs dongles sont connectées au pc UID est un entier sur 8 octets = 4168160174 // ouvrir le dongle , paramètre =0 pour ouvrir le premier dongle trouvé sinon on spécifié le N° de dongle (variable res) // handle=API("Rockey2.dll","RY2_Open",0,UID,&nDword) Trace(EntierVersHexa(handle)) // si handle >=0 alors correct sinon erreur handle=API("Rockey2.dll", "RY2_GenUID", handle,&nDword, &sEed,nIsprotect) Trace("Gen UID succes "+ handle,nDword,sEed ) // écrire dans le mémoire de dongle , max 512 Caractere sBuffer512=" AITEE INFORMATIQUE " API("Rockey2.dll", "RY2_Write", handle,nChan, &sBuffer512) // Lire mémoire interne de dongle , si retourne valeur négative alors erreur API("Rockey2.dll", "RY2_Read", handle,nChan, &sBuffer512) Trace("La valeur dans la mémoire de dongle : " + sBuffer512) FIN FIN DéchargeDLL(hInst) Ajouter ce code dans l'ouverture du projet , pour vérifier si dongle est branché ou lancer la version démo Code (Text): // Lire le DLL contenant les fonctions de dongle hInst est un entier hInst = ChargeDLL("W:\Downloads\Compressed\rockey2_v2.41_20130620\V2.40-20121114\Samples\ASP_C#.net\VS2008\dll\Bin\Rockey2.DLL") SI hInst = 0 ALORS Erreur(ErreurInfo()) SINON Trace("DLL chargée") FIN UID est un entier sur 8 octets = 4168160174 // ouvrir le dongle , paramètre =0 pour ouvrir le premier dongle trouvé sinon on spécifié le N° de dongle (variable res) // UID Contenant la valeur générer par GenUID handle=API("Rockey2.dll","RY2_Open",1,UID,&nDword) SI handle<>0 ALORS Trace("Dongle incorrecte , ") // traitement de version démo SINON Trace("Dongle en marche") // Tout va bien FIN DéchargeDLL(hInst) **** Voice le lien de téléchargement de projet et documentation en anglais , ainsi que quelque exemples en php , java .... **** Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! n'hésiter pas de poser vos questions , tout critiques est la bienvenue ))
Bonjour, il me semble que c'est là : Bonjour visiteur, Merci de vous Inscrire ou de vous connectez pour voir les liens! Bonne journée
Bonsoir Merci pour le partage et l'information aussi. Bonne fin de soirée. Messages fusionnés Bonsoir Je ne sais si cette solution fonctionne pour une application client/serveur. Merci pour le partage si vous avez essayer cette solution en réseau. Bonne soirée.