begin process at 2012 05 29 02:25:16
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

CRC32 qui ne correspond pas


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

CRC32 qui ne correspond pas

mercredi 19 mai 2004 à 13:19:25 | CRC32 qui ne correspond pas

CyberP

J'ai testé ce code que j'ai trouvé sur le net :


const DWORD crc32_table[] = {
0UL, 16777216UL, 33554432UL, 50331648UL, 67108864UL, 83886080UL, 100663296UL,
117440512UL, 134217728UL, 150994944UL, 167772160UL, 184549376UL, 201326592UL, 218103808UL,
234881024UL, 251658240UL, 268435456UL, 285212672UL, 301989888UL, 318767104UL, 335544320UL,
352321536UL, 369098752UL, 385875968UL, 402653184UL, 419430400UL, 436207616UL, 452984832UL,
469762048UL, 486539264UL, 503316480UL, 520093696UL, 536870912UL, 553648128UL, 570425344UL,
587202560UL, 603979776UL, 620756992UL, 637534208UL, 654311424UL, 671088640UL, 687865856UL,
704643072UL, 721420288UL, 738197504UL, 754974720UL, 771751936UL, 788529152UL, 805306368UL,
822083584UL, 838860800UL, 855638016UL, 872415232UL, 889192448UL, 905969664UL, 922746880UL,
939524096UL, 956301312UL, 973078528UL, 989855744UL, 1006632960UL, 1023410176UL, 1040187392UL,
1056964608UL, 1073741824UL, 1090519040UL, 1107296256UL, 1124073472UL, 1140850688UL, 1157627904UL,
1174405120UL, 1191182336UL, 1207959552UL, 1224736768UL, 1241513984UL, 1258291200UL, 1275068416UL,
1291845632UL, 1308622848UL, 1325400064UL, 1342177280UL, 1358954496UL, 1375731712UL, 1392508928UL,
1409286144UL, 1426063360UL, 1442840576UL, 1459617792UL, 1476395008UL, 1493172224UL, 1509949440UL,
1526726656UL, 1543503872UL, 1560281088UL, 1577058304UL, 1593835520UL, 1610612736UL, 1627389952UL,
1644167168UL, 1660944384UL, 1677721600UL, 1694498816UL, 1711276032UL, 1728053248UL, 1744830464UL,
1761607680UL, 1778384896UL, 1795162112UL, 1811939328UL, 1828716544UL, 1845493760UL, 1862270976UL,
1879048192UL, 1895825408UL, 1912602624UL, 1929379840UL, 1946157056UL, 1962934272UL, 1979711488UL,
1996488704UL, 2013265920UL, 2030043136UL, 2046820352UL, 2063597568UL, 2080374784UL, 2097152000UL,
2113929216UL, 2130706432UL, 2147483648UL, 2164260864UL, 2181038080UL, 2197815296UL, 2214592512UL,
2231369728UL, 2248146944UL, 2264924160UL, 2281701376UL, 2298478592UL, 2315255808UL, 2332033024UL,
2348810240UL, 2365587456UL, 2382364672UL, 2399141888UL, 2415919104UL, 2432696320UL, 2449473536UL,
2466250752UL, 2483027968UL, 2499805184UL, 2516582400UL, 2533359616UL, 2550136832UL, 2566914048UL,
2583691264UL, 2600468480UL, 2617245696UL, 2634022912UL, 2650800128UL, 2667577344UL, 2684354560UL,
2701131776UL, 2717908992UL, 2734686208UL, 2751463424UL, 2768240640UL, 2785017856UL, 2801795072UL,
2818572288UL, 2835349504UL, 2852126720UL, 2868903936UL, 2885681152UL, 2902458368UL, 2919235584UL,
2936012800UL, 2952790016UL, 2969567232UL, 2986344448UL, 3003121664UL, 3019898880UL, 3036676096UL,
3053453312UL, 3070230528UL, 3087007744UL, 3103784960UL, 3120562176UL, 3137339392UL, 3154116608UL,
3170893824UL, 3187671040UL, 3204448256UL, 3221225472UL, 3238002688UL, 3254779904UL, 3271557120UL,
3288334336UL, 3305111552UL, 3321888768UL, 3338665984UL, 3355443200UL, 3372220416UL, 3388997632UL,
3405774848UL, 3422552064UL, 3439329280UL, 3456106496UL, 3472883712UL, 3489660928UL, 3506438144UL,
3523215360UL, 3539992576UL, 3556769792UL, 3573547008UL, 3590324224UL, 3607101440UL, 3623878656UL,
3640655872UL, 3657433088UL, 3674210304UL, 3690987520UL, 3707764736UL, 3724541952UL, 3741319168UL,
3758096384UL, 3774873600UL, 3791650816UL, 3808428032UL, 3825205248UL, 3841982464UL, 3858759680UL,
3875536896UL, 3892314112UL, 3909091328UL, 3925868544UL, 3942645760UL, 3959422976UL, 3976200192UL,
3992977408UL, 4009754624UL, 4026531840UL, 4043309056UL, 4060086272UL, 4076863488UL, 4093640704UL,
4110417920UL, 4127195136UL, 4143972352UL, 4160749568UL, 4177526784UL, 4194304000UL, 4211081216UL,
4227858432UL, 4244635648UL, 4261412864UL, 4278190080UL };

DWORD crc32(char* buf, DWORD len) {
DWORD crc32 = 0xFFFFFFFF;
do {
crc32 = crc32_table[(crc32 ^ (*buf++)) & 0xff] ^ (crc32 >> 8);
}while (--len);
return crc32;
}


...qui est censé me donner le crc32 d'un fichier, mais le crc32 qu'il me donne ne correspond pas au vrai (à celui que propose winrar)

CyberP,
Celui qui dit que toute question a une réponse
mercredi 19 mai 2004 à 13:30:23 | Re : CRC32 qui ne correspond pas

BruNews

Administrateur CodeS-SourceS
Il n'y a pas de 'VRAI' crc, du moment que ton prog retrouve toujours le meme pour le meme bloc de donnees, c'est ok.

ciao...
BruNews, Admin CS, MVP Visual C++
mercredi 19 mai 2004 à 14:26:01 | Re : CRC32 qui ne correspond pas

CyberP

Oui mais je voudrais que mon CRC corresponde à celui de winrar (et d'autres programmes) pour les besoins de mon programme

CyberP,
Celui qui dit que toute question a une réponse
mercredi 19 mai 2004 à 14:37:08 | Re : CRC32 qui ne correspond pas

BruNews

Administrateur CodeS-SourceS
verifie avec celui de la zlib, tu le trouveras sur le net, c'est open source.

ciao...
BruNews, Admin CS, MVP Visual C++
mercredi 19 mai 2004 à 19:43:38 | Re : CRC32 qui ne correspond pas

CyberP

C'est bon j'ai trouvé un code qui prend bit par bit au lieu de char par char et ca marche

CyberP,
Celui qui dit que toute question a une réponse


Cette discussion est classée dans : table, code, dword, crc32, correspond


Répondre à ce message

Sujets en rapport avec ce message

lire gros fichier En C + CRC32 [ par ar1du62 ] Bonjour; je souhait calculer le CRC32 d'un fichier donc google a été mon ami (encore que...) Mais je le probleme c'est que lorsque je veux calculer A quoi correspond le : (seul pas ::) [ par Sim 2005 ] Dans une source j'ai trouvé l'opérateur : . A quoi cela correspond-il (est-ce bien un opérateur).Voici le lien vers la source : http://www.cppfrance.c injection dll qui fait planter le processus cible [ par wisar ] Salut Alors j'ai récupérer un bout de code pour faire une injection d'une dll dans un processus tout semble bien se passer tout me dit que c'est ok m Probleme de caractere dans un tableau [ par byoushin ] Bonjour,J'ai un tableau a 2 dimensions qui ressemble a ca :0 1 2 3 4 5 6 7 8 91 0 0 0 0 0 0 0 0 02 0 0 0 0 0 0 0 0 03 0 0 0 0 0 0 0 0 04 0 0 0 0 REG_DWORD [ par Xentor609 ] Lorsque je recupere la valeur d'une clé avec RegEnumValue,celle-ci doit etre stockée dans un BYTE. Quand le type de la valeur recupérée est un REG_SZ, Prob de thread [ par sebastienbro ] Bonjour, j'ai un problème avec des thread, je n'arrive pas a en créer un :(Voici mon code : HANDLE hThread1;DWORD dwThreadId1;DWORD WINAPI T Quel est ce langage? et qu'est-ce que cela veut dire? [ par romainstq ] Bonjour,je ne sais pas si je poste dans la bonne catégorie du forum, mais je souhaiterai savoir ce que vous pensez du code suivant et si les personnes Arbres binaires+bibliothèque [ par sebk12 ] Bonjour à tous!Voila j'ai un petit exercice (enfin pas si petit) qui me tracasse, ça fait que 6 mois que je fais du C donc je suis un peut perdu! Voil compilateur [ par jmbrico ] bonjour à tous les fans,    je planche pour compiler du code 8086 (et autres) cible. Après plusieurs essais infructueux , je cherche un compilateur (C code de controle [ par soupili ] bonjour,comment appelle t on les chiffre et /ou lettre legerement deformees que l on doit retaper pour effectuer une inscrption a un site.je fait des


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,045 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales