begin process at 2012 05 29 22:20:32
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Général

 > 

Probleme de string ...


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

Probleme de string ...

lundi 17 mars 2008 à 10:31:24 | Probleme de string ...

Ahryman40k

Bonjour,
j'ai un comportement bizarre à travers du code que je ne maitrise pas et j'aimerai vos avis.

J'ai dans une library à laquelle je suis linké le code suivant

#define

KEY "çj]%Þ6f$.JÛ.$(ñå"

Dans l'application qui exploite cette lib, j'ai ce code-ci :

char

* pByte =newchar[16];

memset

( pByte,0,16);

::memcpy( pByte, KEY,16);

Normalement je devrai retrouver la valeur de mon #define dansmon pointeur suite au memcpy ?
pourtant voici ce que contient mon pointeur :

+ pByte 0x04b78f98 "çj]%ø6f$.JÃ>.$ýýýý««««««««îþîþ" char *

j'admet que je ne comprend pas ce qui arrive à cette chaine ... ??????
Et j'ai imperativement besoin de savoir ce qui se passe avec ce #define.

Cette clef sert à des operation d'encryption/decryption.
Dans le meme exe, cette bizarrerie n'as pas d'influence car elle apparait de la même maniere lors des 2 operations.
Par contre dans un autre projet la copie de KEY dans un pointeur me donne bien "çj]%Þ6f$.JÛ.$(ñå"
du coup si j'encrypte dans un projet A où KEY =  KEY je ne peux pas decrypter la donné dans le projet B vu que KEY = F(KEY),

J'ai bien cherché partout, et je ne vois pas de probleme d'unicode, tous les projets sont compilés avec les même options.
Enfin bref je donne ma langue au chat et je cherche des pistes ...

Merci.
lundi 17 mars 2008 à 10:45:59 | Re : Probleme de string ...

Pistol_Pete

Salut
Je ne sais pas si ca va corriger totalement ton probleme mais dans une chaine de caractere on laisse toujours une place pour le zero terminal.
Aussi, comme ta cle fait 16 caracteres, il faut que tu declares un tableau de 17 caracteres et que tu copies les 16 cracteres de ta cle + le zero terminal
Donc:
memcpy( pByte, KEY,17);

A+
Mon site internet : [ Lien ]

lundi 17 mars 2008 à 10:53:09 | Re : Probleme de string ...

Ahryman40k

Je suis d'acord avec toi, mais le but ici n'est pas d'avoir une chaine de caractere avec un caractere de fin de chaine ...
je manipule ma donnée en sachant pertinament sa longueur.

lundi 17 mars 2008 à 11:05:41 | Re : Probleme de string ...

Pistol_Pete

Essaye 2 petites choses pour essayer de localiser le probleme:
-Remplace directement KEY par sa valeur memcpy( pByte,"çj]%Þ6f$.JÛ.$(ñå",17);
-Essaye avec strcpy

J'avoue que c'est tres etrange, memcpy copie ce qu'on lui donne... ca devrait marcher.
A+
Mon site internet : [ Lien ]

lundi 17 mars 2008 à 11:40:22 | Re : Probleme de string ...

Ahryman40k

j'ai deja essayé tout cela, mais ca me fait la même chose.
J'ai orienté mes recherches sur des problemes de conversion ANSI / MBCS, bien que je ne comprend reellement pas pourquoi 'ç' devient "ç" ...
Mon idée et que ce qui est ecrit dans l'editeur est dans une table de caracteres et ce qui est transcrit dans le code est dans une autre table de caractere, un truc du genre ...
Mais dans ce cas, pourquoi mon autre code qui utilise la même lib se comporte lui correctement ... !!??


Cette discussion est classée dans : code, probleme, key, define, pbyte


Répondre à ce message

Sujets en rapport avec ce message

probleme avec InitCommonControlsEx() [ par yag00 ] bonjour, j'ai un probleme avec InitCommonControlsEx()voila le code : #define _WIN32_WINNT 0x0501#define _WIN32_IE 0x500typedef struct tagINITCOMMONCON probleme fopen, fpuc, fgetc [ par ZEROCOOL492 ] salut tout le mondevoila j'ai un probleme avec ce code :file = fopen(file_location, "r+b")input = fgetc(file);fputc(output, file);jai volontairement t Probleme en C++ (console) [ par nightmar ] Bonsoir :)Voila je debute en C++ et j'ai un petit probleme, j'ai esseyé de coder un code console asser simple mais apparament il y a un probleme avec conversion virtual key code ->char [ par Sebopop2 ] Salut!Je ne trouve pas de moyen simple de convertir un virtual key code en char et inversementest ce que qqun sait comment faire?merci. Probleme de conversion char int string... [ par pyr0123 ] Salut, Je code un échange de trames (t'chat) par port série entre 2 PC en C++ .net VStudio 2k5. J'envoie la chaine 'toto' du PC1 vers PC2, avec l'hyp Probleme affichage fenetre Win32 [ par fredsor ] Salut a tous,Voila j'ai un probleme qui n'est un probleme de code mais un probleme plus en relation avec des librairies ou des parametres Windows, enf Probleme de comprehension [ par moi1948 ] Bonjours;je voudrai écrir un programme c pour simuler un circuit RLC en modifiantle code source "SIMULATION D'UN CIRCUIT RC" disponible sur le forum e Probleme concernant la méthode Move [ par fab3131 ] Je code sous visual.net et jai un petit soucis conceranant la méthode move qui me permet de déplacer un fichier texte d'un endroit a un autre en cliqu Unicode [ par Nebula ] Salut à tous,J'essaie (laborieusement) d'utiliser Unicode dans mes applications...Voici un extrait de mon code :#define UNICODE#define _UNICODE LPT Probleme thread linux ... [ par Tidam ] Voila mon probleme, quand je ve compiler il me sort une erreur : passing `void (*)(void *)' as argument 3 of `pthread_create(pthread_t *, const pthrea


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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,794 sec (3)

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