begin process at 2012 05 30 16:16:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Autre

 > 

Registre windows - Aidez moi!!


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

Registre windows - Aidez moi!!

vendredi 1 décembre 2006 à 03:47:40 | Registre windows - Aidez moi!!

pepsidrinker

Salut tlm,
jai un gros probleme.

Jai WinXP 64bits d'installer chez moi.
Avec Visual c++, j'essais daller chercher la valeur d'un clé du registre ouverte. (le hanlde de la clé est bon).

Voici mon code:
------------------------------------
 HKEY KeyHandle = 0;
 CConversion* pConversion = new CConversion;
 LPCTSTR lpTempVar = pConversion->pCharToLPCTSTR(SubKey);

 long KeyOK = RegOpenKeyEx(HKEY_LOCAL_MACHINE,lpTempVar,0,KEY_ALL_ACCESS,&KeyHandle);
 if(KeyOK != ERROR_SUCCESS)
  return -1;

 lpTempVar = pConversion->pCharToLPCTSTR(ValueName); //On ré-utilise la meme variable, économie de mémoire
 DWORD valueType = NULL;//le buffer qui recevera le type de la clé ouverte
 DWORD buffLenght = NULL;    

 KeyOK = RegQueryValueEx(KeyHandle,lpTempVar,NULL,&valueType,(LPBYTE)buffer1,&buffLenght);
 if(KeyOK!=ERROR_SUCCESS)
  return 0;

 return 1;
 ----------------------------------------
Aucune erreur de compilation, la premiere fonction 'regopenkeyEx' marche tres bien, elle me renvois ERROR_SUCCESS ;),
mais pour une raison inconnue, RegQueryValueEx ne renvois jamais ERROR_SUCCESS...

SVP AIDEZ MOI ! Il faut que RegQueryValueEx marche...:(

Pepsidrinker
vendredi 1 décembre 2006 à 03:57:08 | Re : Registre windows - Aidez moi!!

SAKingdom

Membre Club
Bien d'après MSDN, le dernier paramètre de RegQueryValueEx est un pointeur vers une variable contenant la taille du buffer entré dans le paramètre précédent. Il contiendra par la suite le total d'octets écrit dans ce même buffer.

En gros, buffLenght devrait contenir la taille de buffer1 en octet. Après la fonction, il contiendra le total d'octet écrit dans buffer1.

C++ (@++)

vendredi 1 décembre 2006 à 08:51:39 | Re : Registre windows - Aidez moi!!

louis14

Réponse acceptée !
un premier appel permet de connaître la taille du buffer nécessaire si on ne connait pas le type de la clé; ensuite un deuxième appel permet de prendre la valeur en ayant alloué la variable

louis14


Cette discussion est classée dans : error, registre, success, lptempvar, keyok


Répondre à ce message

Sujets en rapport avec ce message

Problème d'access au registre Buffer [ par drkns ] Bonour,J'aimerais savoir si qq peu m'aider sur le problème suivant :En effet, j'ai des problème d'accès qu registre, suite a la recupérartion de plusi UNION REGS ERROR in DEV C++ [ par samissam ] bonjour; j'ai la fonction suivante dans cod en c++ et quand j'essaie de compiler il me rend une erreur sur la ligne [union REGS registre;] disant q RegSetValue [ par deck_bsd ] Yop à tous, J'ai un problème bizzare . J'ai cette méthode : [code=cpp] BOOL __stdcall SetInRun(char * szPath){ HKEY hkKey; long iError; if fatal error LNK1104: impossible d'ouvrir le fichier '.\Debug\main.obj' [ par jeanmiCpp ] bonjour, je suis debutant en Visual C++ (version 2005 express SP1) j'ai fait une premiere application en console : // example1.cpp : main project f probleme compilation sous dev-Cpp [ glut ! ] [ par augusd ] Mesdames, Messieurs, Je m'amuse actuellement sur Dev-Cpp à coder en utilisant la librairie glut. J'ai pu réaliser en cours deux - trois programmes Utiliser une librairie C++ (TinyXML) dans un programme c [ par PADYVEN ] Bonjour, Voila j'ai dernièrement récupèré la lib TinyXml pour parser un fichier Xml Je l'ai compilé en tant que lib et utilisé dans un programme c++ problème compilation sous Dev-cpp [ librairie glut ] [ WINDOWS ] [ par augusd ] Bonjour à tous Je m'amuse actuellement sur Dev-Cpp à coder en utilisant la librairie glut. J'ai pu réaliser en cours deux - trois programmes. Cepe error C2440: 'static_cast' : impossible de convertir de 'CreerLevel::Mur ^const ' en 'CreerLevel::Mur' [ par clavat ] Bonjour, j'ai un problème de type ! J'ai d'un coté une classe Mur et de l'autre un vector de Mur. j'aimerais faire un for each a l'intérieur mais une error C2143 [ par Jakari ] je rencontre systématiquement l'erreur : Code : error C2143: syntax error : missing ';' before '*'Le problème c'est qu'il n'y a pas d'erreur au nivea se debarasser des error: crosses initialization [ par razuki ] Bonjour, J'ai repris une couche écrite en c++ et je dois rajouter une couche SSL dessus. le mec qui a écrit la couche a mis plein de goto, et du coup,


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,186 sec (4)

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