Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1396 connectés 

  FORUM HardWare.fr
  Programmation

  [C++] Base de registre

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++] Base de registre

n°65231
godbout
Génial.
Posté le 15-10-2001 à 15:04:08  profilanswer
 

Il faudrait que je recupere des valeurs dans la base de registre.
J'utilise la fonction RegOpenKeyEx et RegQueryValueEx, mais impossible de les faire fonctionner :??:
 
Quelqu'un a un exemple ?

mood
Publicité
Posté le 15-10-2001 à 15:04:08  profilanswer
 

n°65232
chrisbk
-
Posté le 15-10-2001 à 15:10:49  profilanswer
 

plus simple :
 
#include <atlbase.h>
 
 
CRegKey key
status = key.Create(HKEY_CURRENT_USER,"Software\\blah" );
 
char  path[512];
DWORD sizePath=512;
 
status = key.QueryValue(path,"macle",&sizePath);
if (status == ERROR_SUCCESS)
//cle trouvee
 
 
"macle" etant bien entendu le nom de la cle dont tu veux l info

 

[edtdd]--Message édité par chrisbk--[/edtdd]

n°65243
godbout
Génial.
Posté le 15-10-2001 à 15:25:57  profilanswer
 

euh, ouaip
c'est pas grave si j'utilise pas les deux grosses fonctions de la mort qui tue ?

n°65244
chrisbk
-
Posté le 15-10-2001 à 15:26:53  profilanswer
 

les RegOpenKeyEx  et consort ?
 
nope, a mon avis la CRegKey le fait gentillement pour toi
sympa non ? :)

n°65247
godbout
Génial.
Posté le 15-10-2001 à 15:30:50  profilanswer
 

ok ben je vais tester alors.
Mais ca me fait chier de caler la moitie de ce qu'il faut faire, les fonctions, etc...
Ils pourraient foutre des exemples dans le msdn

n°65257
godbout
Génial.
Posté le 15-10-2001 à 16:05:59  profilanswer
 

le path c'est bien Software//.... paske la j'ai une belle erreur d'execution

n°65316
Kouye
Posté le 15-10-2001 à 20:21:20  profilanswer
 

intéressant ce pti topic :)

n°65358
chrisbk
-
Posté le 15-10-2001 à 23:02:03  profilanswer
 

plantage ?
 
ca m'epate, g fait cut & paste de mon code, qui marche
 
mettons que dans ton registre tu aie le rep HKEY_CURRENT_USER\sofware\godbout et dedans la clé pouet contenant la chaine "brol"
 
CRegKey key  
status = key.Create(HKEY_CURRENT_USER,"Software\\godbout" );  
 
char  path[512];  
DWORD sizePath=512;  
 
status = key.QueryValue(path,"pouet",&sizePath);  
 
normalement, si je ne bois pas, path doit contenir "brol"

n°65377
godbout
Génial.
Posté le 16-10-2001 à 08:52:40  profilanswer
 

ok ben je m'etais surement plante avec le path.
Je vais reessayer, mais j'aimerais comprendre pourquoi j'arrive pas a utiliser les fonctions RegOpen..., etc...
 
Suis je vraiment nul ?? :??:

n°65380
chrisbk
-
Posté le 16-10-2001 à 08:59:30  profilanswer
 

non :D
 
les fonctions du registres ont souvent 250param, pas tjs faci;e de voir ce qu'ils veulent :)

mood
Publicité
Posté le 16-10-2001 à 08:59:30  profilanswer
 

n°65382
godbout
Génial.
Posté le 16-10-2001 à 09:01:36  profilanswer
 

ok ca marche  
merci ;) (encore 1 fois:))

n°65385
chrisbk
-
Posté le 16-10-2001 à 09:15:54  profilanswer
 

Godbout a écrit a écrit :

(encore 1 fois:))  




 
la facture devrait bientot arriver :D

n°65389
godbout
Génial.
Posté le 16-10-2001 à 09:21:30  profilanswer
 

Au fait tu fais koi comme boulot ?
Parce que j'ai remarque que tu connaissais un sacre paquet de truc, comme deux ou trois autres sur ce forum (Guru, el_gringo, BENB)

 

[edtdd]--Message édité par Godbout--[/edtdd]

n°65396
chrisbk
-
Posté le 16-10-2001 à 09:37:26  profilanswer
 

je bosse pas, enfin pas vraiment .  
Pour le moment je suis stagiaire, jusqu'a decembre . apres ca je retourne a la fac pour 6 mois et apres soit je bosse soit je refait un an, je sais pas encore trop

n°65397
godbout
Génial.
Posté le 16-10-2001 à 09:42:43  profilanswer
 

t'es en quelle annee de fac ?
fac de koi ?
ou t'as appris tout ca ?
quel age ?
oui ?
non ?

n°65402
chrisbk
-
Posté le 16-10-2001 à 09:52:40  profilanswer
 

IUP GMI 3eme annee, 21 ans (on dirait Maurice avec ses " qui va la je t prie :D)
 
j ai appris a cote en fait, depuis que g commencer l'IUT. je code des trucs pour moi, en dose assez...massives
 
moteur 3D principalement, et tout le tatoin qui va avec (plug in max, editeur et autre joyeusete du genre....)

n°65404
godbout
Génial.
Posté le 16-10-2001 à 09:54:11  profilanswer
 

chrisbk a écrit a écrit :

IUP GMI 3eme annee, 21 ans (on dirait Maurice avec ses " qui va la je t prie :D)
 
j ai appris a cote en fait, depuis que g commencer l'IUT. je code des trucs pour moi, en dose assez...massives
 
moteur 3D principalement, et tout le tatoin qui va avec (plug in max, editeur et autre joyeusete du genre....)  




 
ok... (I'm calmed :D)

 

[edtdd]--Message édité par Godbout--[/edtdd]

n°65407
chrisbk
-
Posté le 16-10-2001 à 10:02:47  profilanswer
 

boaf, c juste une question de tps....et g passe pas mal de mon tps a coder ces derniers annees.
 
je te dirais que l'IUT m'a pas bpc appris (j'apprenais 10x plus vite avec "le C en 21 jours" qu'en suivant les cours de l'IUT) et l'iup pas trop non plus (du moins pour le C++)
 
 
tu bosses depuis lgtps ? quel etudes ?

n°65408
godbout
Génial.
Posté le 16-10-2001 à 10:04:21  profilanswer
 

Ca fera bientot 2 mois.
J'ai fait un DUT info, c'est pareil ca m'a appris que les bases, en gros du bon vieux C dos :D
Je m'etais mis un peu a la prog windows, mais beaucoup moins pousse que ce que je fais (ou que j'ai l'impression de faire) en ce moment.

 

[edtdd]--Message édité par Godbout--[/edtdd]

n°65410
BENB
100% Lux.
Posté le 16-10-2001 à 10:07:49  profilanswer
 

IUP = Institut Universitaire ___   :??:
GMI = Genie des Methodes Informatiques :??:
 
reelement je ne sais pas, dites moi...

n°65412
chrisbk
-
Posté le 16-10-2001 à 10:11:27  profilanswer
 

IUP = ..... professionalise, ou un truc du gout (blah ! :D)  
GMI = genie mathematique et informatique

n°65413
BENB
100% Lux.
Posté le 16-10-2001 à 10:13:52  profilanswer
 

Merci :jap:
topic interessant...
j'ai appris sur la base de registre + IUP et GMI...

n°65416
godbout
Génial.
Posté le 16-10-2001 à 10:22:57  profilanswer
 

Juste pour revenir au topic j'ai reussi a utiliser les deux grosses fonctions.
J'ai essaye meme si ta technique marchait chrisbk, non pas parce que je voulais forcement du bourrin mais plutot pour comprendre un peu les types, les arguments,etc..
 
Voila voila... :)

n°65418
godbout
Génial.
Posté le 16-10-2001 à 10:27:01  profilanswer
 

Par contre je trouve ca terrible que les arguments demandes soit du type LPDWORD ou LPBYTE et que si tu les definis comme ca ca marche pas.
Oblige de les definir en tant que unsigned char et unsigned long.
Forcement quand t'es pas au courant c'est chaud (ou alors j'me demmerde encore comme une bille :D)

n°65419
chrisbk
-
Posté le 16-10-2001 à 10:28:04  profilanswer
 

pas de pb :)
 
A l'avenir tu auras le choix :)

n°65420
BENB
100% Lux.
Posté le 16-10-2001 à 10:38:43  profilanswer
 

LP ca veut dire Long Pointer me semble-t-il...
donc c'est normal qu'il faille declarer une variable puis en passer l'adresse...  
par contre une * serait plus parlante (a mon avis)

n°65423
godbout
Génial.
Posté le 16-10-2001 à 10:46:40  profilanswer
 

Ouais mais meme en mettant une * ou n'importe quoi il prend pas.
C'est pour ca que je m'obstinais a vouloir utiliser ces fonctions, histoire de comprendre.
 
LONG RegQueryValueEx(
  HKEY hKey,           // handle to key to query
  LPTSTR lpValueName,  // address of name of value to query
  LPDWORD lpReserved,  // reserved
  LPDWORD lpType,      // address of buffer for value type
  LPBYTE lpData,       // address of data buffer
  LPDWORD lpcbData     // address of data buffer size
);
 
 
Pour lpData
 
Si tu mets
LPBYTE path[512];
LPBYTE *path[512];
LPBYTE &path[512];
...
Enfin bref rien ne passe.
Il faut mettre unsigned char path[512]

n°65424
chrisbk
-
Posté le 16-10-2001 à 10:49:47  profilanswer
 

ouais attends, LPBYTE = unsigned char *  
 
bref, quand tu fais
LPBYTE path[512];  
 
c egal a : unsigned char * path[512]
ce qui n'est pas bon
 
faut faire :
 
BYTE path[512];

n°65430
BENB
100% Lux.
Posté le 16-10-2001 à 11:05:20  profilanswer
 

et plutot que de mettre LPBYTE, je trouve qu'ils aurraient du mettre BYTE*...  
c'est tout...

 

[edtdd]--Message édité par BENB--[/edtdd]

n°65431
godbout
Génial.
Posté le 16-10-2001 à 11:05:53  profilanswer
 

ok,  
ca m'aidera surement avec les prochaines fonctions, ca m'evitera de batailler pendant des heures.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [C++] Base de registre

 

Sujets relatifs
Avec quel langage faire une base de donnée consultable sur le netAvantages/Inconvénients d'un site entierement sur base MySQL ?
Interroger une base de données MySQL distante grace a un programme C?[base des registres] Ecrire à distance - Os Court
[base des registres windows] Ecrire sur poste distant - Os CourtCréation et suppresion d'une clé de base de registre avec Visual Basic
[???] Mettre liste de prix à jour a base de feuille Excelsauvegarde base Mysql
[PHP] Crée une fonction de recherche sur une base MySQL 
Plus de sujets relatifs à : [C++] Base de registre


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR