Patrick_35 Posté(e) le 21 décembre 2006 Posté(e) le 21 décembre 2006 Tu fais comme tu veux, si ça peux te servir :P Juste une précision, mon numéro de serie est un espace Pour ton test, utilise(if (member ser '(nil "" "_" "__" "___" "-")) patati... patata... )Cela evitera une galerie de or ;) ps1 : un _ est égal à un espace ps2 : (setq ser ser) ne sert à rien, tu définis la variable ser égal à elle-même @+ [Edité le 21/12/2006 par Patrick_35] Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 25 décembre 2006 Auteur Posté(e) le 25 décembre 2006 Bonjour Patrick_35 après des essais de tous les codes sur 4 postes identiques (100% identiques) il s'est avéré ce qui suit : 1- Pour le code sur le nuémro de série du disque dur :apparemment ça ne ressort pas le numéro de série car j'ai remarqué que le résultat est exactement identique pour les quatres PC à l'exception de cette valeur qui est différente pour un seul PC: Signature : -720329424Signature : -858927923Signature : -858927923Signature : -858927923 si j'ai un commentaire à faire c'est le numéro de série ne figure pas parmi toute l'information, il faut voir du coté du code posté sur le site de vbfrance. d'ailleurs j'ai déjà fait la remarque que le résultat de ce code est différent du tien! 2- Le code de l'opérationg systeme a donné ceci : "76413-365-6725323-22592""76413-365-6725323-22539""76413-365-6725323-22537""76413-365-6725323-22414" 3- Le code du série du bios a donné ceci : "KDVB275""KDVB293""KDVB299""KDVB336" une question au passage si ces numéros sont en hexa pourquoi toujours "KDVB" je pense que ce n'est pas en hexa. 4- Pour ce même code et sur le même PC avant et après formatage, ce numéro ne change pas. Merci
Patrick_35 Posté(e) le 27 décembre 2006 Posté(e) le 27 décembre 2006 Salut 1 - Pour le numéro de serie du DD, je suis pour l'instant incapable de te le trouver2 - Perso, je pense que le numéro qui serait le plus util serait celui de l'OS3 - Je pense que c'est selon le constructeur et donc un numéro libre s'il est rempli par celui-ci4 - Reste donc le numéro du bios qui lui est normalement invariable @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
CDL Posté(e) le 27 décembre 2006 Posté(e) le 27 décembre 2006 J'avais proposé une solution:D ICI Pour plus d'info sur l'adresse MAC c'est LA Je radote mais c'est écrit : :casstet: attribuer mondialement une adresse unique au niveau de la couche de liaison :cool:
marionsname Posté(e) le 29 décembre 2006 Auteur Posté(e) le 29 décembre 2006 Salut Oui Patrick_35 je suis d'accord avec toi, enfin c'est le numéro du bios qui reste une bonne piste, tandis que le numéro de l'OS change à chaque réinstallation.Pour ce qui est de la gestion des chaines dont j'ai parlé plus haut est-ce simple à faire ou compliqué (je parle de la convertion de chaine en entier ou en décimal) ? Merci à toi aussi CDL,cette adresse MAC semble aussi une bonne piste, mais j'ai lu un peu sur la base de registre pour y retrouver des traces, mais en vaim jusqu'à présent. La bataille reste ouverte. Patrick_35 si tu peux fournir un petit effort pour le code de le gestion des chaines ce serait vraiment sympat, sinon c'est aussi sympat. Bonne continuation à tous et meilleurs voeux pour 2007
Patrick_35 Posté(e) le 5 janvier 2007 Posté(e) le 5 janvier 2007 Salut et tous mes voeux pour 2007 (vl-string->list "AGG4520") --> (65 71 71 52 53 50 48)Serait la solution ? @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 8 janvier 2007 Auteur Posté(e) le 8 janvier 2007 Merci Patrick_35 c'est exactement ce qu'il faut seulement le resultat est une liste j'ai cherché dans l'aide dans les fonctions de traitement de list pour enlever les espaces qu'il ya entre les chiffres mais j'ai pas trouvé. comme j'ai j'ai besoin d'un entier en résultat. Merci beaucoup
Patrick_35 Posté(e) le 8 janvier 2007 Posté(e) le 8 janvier 2007 Salut Par exemple avec une addition(apply '+ (vl-string->list "AGG4520")) --> 410 En multiplication(apply '* (vl-string->list "AGG4520")) --> -1651108480 Sans les espaces(apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520"))) --> "65717152535048" Sans les espaces et comme entier(atoi (apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520")))) --> 2147483647 @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 8 janvier 2007 Auteur Posté(e) le 8 janvier 2007 Pourquoi il ya une différence (au niveau de la valeur) entre (apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520"))) --> "65717152535048" et (atoi (apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520")))) --> 2147483647 je sais que dans autocad il y a une limitation au niveau des entiers mais quand on fait(atoi "65717152535048") ça donne comme resultat 2147483647 est-ce une convertion c'est pas clair? quelle est le rapport entre les deux chiffres?. le résultat de (apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520"))) --> "65717152535048" pour le convertir en réel quelle fonction utiliser. Merci je t'en demande trop :P
Patrick_35 Posté(e) le 8 janvier 2007 Posté(e) le 8 janvier 2007 Le chiffre 65717152535048 dépasse les 32 bitsSi je fait en binaire 11111111111111111111111111111111, en décimal cela donne 4294967295Donc un (65717152535048 - 2147483647) / 4294967295 donne environ 15300Je peux logiquement en déduire que la limite numérique d'autocad pour un entier est de (65717152535048 - 2147483647) / 15300, ce qui donne 4295098369 Donc, je pense que le chiffre 2147483647 est la résultante de 65717152535048 - (4295098369 * 15300) Pour la conversion en réel(atof (apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520")))) --> 6.57172e+013 Et en plus, ce chiffre est exacte. Je viens d'apprendre un truc, que la conversion en réel est plus précise qu'en entier pour les grands chiffres :P @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
marionsname Posté(e) le 10 janvier 2007 Auteur Posté(e) le 10 janvier 2007 le résultat de (atof (apply 'strcat (mapcar '(lambda (x) (itoa x)) (vl-string->list "AGG4520")))) --> 6.57172e+013 donne un résultat en format scientifique, pour l'avoir en décimal s'agit-il d'une variable système ou d'un paramètre. dans l'aide je n'ai pas trouvé de paramètres pour atof. merci
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant