IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] Accès à la base de registre


Sujet :

MFC

  1. #1
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 3
    Points : 2
    Points
    2
    Par défaut [résolu] [MFC] Accès à la base de registre
    Bonjour,
    je commence à me pencher sur les fonctions d'accès à la base de registre et je rencontre un petit problème. Je veux sauver une chaine contenant un chemin. L'enregistrement se passe bien, je retrouve ma valeur avec regedit.
    Mais la lecture ne donne rien de bon, buffer carrèment inexploitable...
    Voilà mon source, si vous avez quelques idées
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // enregistrement
    RegCreateKeyEx(HKEY_CURRENT_USER,chemin_vers_la_cle,0,"", REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, & SecAtt, &cle, &Action);
    sprintf(buffer,"%s",path);
    RegSetValueEx(cle,"chemin",0,REG_SZ ,(unsigned char *)buffer,strlen(buffer)+1);
    // lecture
    RegOpenKeyEx(HKEY_CURRENT_USER,chemin_vers_la_cle,0,KEY_ALL_ACCESS,&cle);
    RegQueryValueEx(cle,"chemin",NULL,&type,(unsigned char*)buffer,&taille);
    Et là buffer = "IIIIIIII"
    RegQueryValueEx me renvoit "Plus de données sont disponibles ."
    Pourtant la taille du buffer est suffisante... je ne voit pas trop comment interpréter ce message :-/

  2. #2
    fd
    fd est déconnecté
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 131
    Points : 162
    Points
    162
    Par défaut
    Et si tu faisais un
    RegCloseKey
    entre les deux ?

  3. #3
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    J'aurai du préciser : la partie écriture et la partie lecture sont séparées. Chacune dans une fonction disctincte. Un RegCloseKey est effectué avant de sortir de la fonction.

  4. #4
    Candidat au Club
    Inscrit en
    Juillet 2003
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 3
    Points : 2
    Points
    2
    Par défaut
    Je le tiens !
    Il faut initialiser la variable "taille" avec la taille du buffer....
    Tout simplement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 07/02/2007, 04h26
  2. [MFC] Accès à une base access sur le net
    Par LapinGarou dans le forum MFC
    Réponses: 4
    Dernier message: 21/03/2006, 12h11
  3. []Erreur d'accès à la Base de registres
    Par oulai_evado dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/12/2005, 13h59
  4. Accès à la base de registre windows à distance
    Par xavame dans le forum Sécurité
    Réponses: 4
    Dernier message: 13/07/2005, 15h23
  5. Comment empêcher l'accès à la base de registre ?
    Par AT dans le forum API, COM et SDKs
    Réponses: 11
    Dernier message: 29/03/2005, 09h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo