Trouver une ressource (Nouvelle version du moteur, plus rapide & pertinent, essayez le !)
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
Sujet : Manipuler la base de registres [ Archives / API ] (vbnul)
|
Manipuler la base de registres
le 22/12/2002 17:04:51

vbnul
|
J'ai un peu de mal pour la base de registre, qqn pourrait il me dire comment : _Créer et modifier des clés(modifier les valeur) _supprimmer une clé _obtenir la valeur d'une clé _lister tt les clés présentes dans un dossier essayez de mettre un exemple, les API de la base de registres sont assez dures... (par rapport au vb ;) ) merci
|
|
|
|
Re : Manipuler la base de registres
le 22/12/2002 23:39:32

vieuxLion
|
D'abord les précautions d'usages : Travailler avec la base de registre est TRES dangereux bla... bla... bla...
Maintenant voici un petit bout de code spécialement préparé pour l'occasion: Il crée une clef sous HKEY_CURRENT_USER et la relie
Au suivant de compléter l'exemple...
#include <windows.h>
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { const unsigned long bufLen = 25; HKEY hKey; TCHAR szValeur[]= "ca marche ?"; LONG lRet;
//Ecriture de la clef if(RegCreateKeyEx(HKEY_CURRENT_USER, TEXT("MaClef"),//nom de la nouvelle clef 0, "", 0, KEY_READ | KEY_WRITE, 0,//les SecurityAttributes sont ignorés &hKey,//le handle de la nouvelle clef 0 ) != ERROR_SUCCESS) {MessageBox(0,"RegCreateKeyEx","Erreur",MB_OK);return 1;} RegSetValueEx(hKey, "MaValeur", 0, REG_SZ /*type chaine*/, (LPBYTE) &szValeur, strlen(szValeur)); RegCloseKey(hKey);
//Lecture de la clef if(RegOpenKeyEx(HKEY_CURRENT_USER, TEXT("MaClef"), 0, KEY_QUERY_VALUE, &hKey) != ERROR_SUCCESS) {MessageBox(0,"","Erreur",MB_OK);return 1;}
lRet = RegQueryValueEx(hKey, TEXT("MaValeur"), NULL, NULL, (LPBYTE)szValeur, (LPDWORD)&bufLen);
RegCloseKey(hKey);
if(lRet != ERROR_SUCCESS) {MessageBox(0,"","Erreur",MB_OK);} else {MessageBox(0,szValeur,"OK",MB_OK);} return 0; }
------------------------------- Réponse au message : -------------------------------
> J'ai un peu de mal pour la base de registre, > qqn pourrait il me dire comment : > _Créer et modifier des clés(modifier les valeur) > _supprimmer une clé > _obtenir la valeur d'une clé > _lister tt les clés présentes dans un dossier > > essayez de mettre un exemple, les API de la base de registres sont assez dures... (par rapport au vb ;) ) > > merci
|
|
|
|
Re : Manipuler la base de registres
le 22/12/2002 23:48:42

vieuxLion
|
Encore moi, Je viens de m'apercevoir que 2 excellentes sources récentes ont été postées sur le sujet ... => par SARDINOMAN à consulter donc !
------------------------------- Réponse au message : -------------------------------
> D'abord les précautions d'usages : > Travailler avec la base de registre est TRES dangereux > bla... bla... bla... > > Maintenant voici un petit bout de code spécialement préparé pour l'occasion: > Il crée une clef sous HKEY_CURRENT_USER et la relie > > Au suivant de compléter l'exemple... > > #include <windows.h> > > int APIENTRY WinMain(HINSTANCE hInstance, > HINSTANCE hPrevInstance, > LPSTR lpCmdLine, > int nCmdShow) > { > const unsigned long bufLen = 25; > > HKEY hKey; > TCHAR szValeur[]= "ca marche ?"; > LONG lRet; > > //Ecriture de la clef > if(RegCreateKeyEx(HKEY_CURRENT_USER, > TEXT("MaClef"),//nom de la nouvelle clef > 0, "", 0, KEY_READ | KEY_WRITE, > 0,//les SecurityAttributes sont ignorés > &hKey,//le handle de la nouvelle clef > 0 ) != ERROR_SUCCESS) > {MessageBox(0,"RegCreateKeyEx","Erreur",MB_OK);return 1;} > RegSetValueEx(hKey, "MaValeur", 0, > REG_SZ /*type chaine*/, > (LPBYTE) &szValeur, > strlen(szValeur)); > RegCloseKey(hKey); > > //Lecture de la clef > if(RegOpenKeyEx(HKEY_CURRENT_USER, > TEXT("MaClef"), > 0, > KEY_QUERY_VALUE, > &hKey) != ERROR_SUCCESS) > {MessageBox(0,"","Erreur",MB_OK);return 1;} > > lRet = RegQueryValueEx(hKey, > TEXT("MaValeur"), > NULL, > NULL, > (LPBYTE)szValeur, > (LPDWORD)&bufLen); > > RegCloseKey(hKey); > > if(lRet != ERROR_SUCCESS) > {MessageBox(0,"","Erreur",MB_OK);} > else > {MessageBox(0,szValeur,"OK",MB_OK);} > > return 0; > } > > > > > ------------------------------- > Réponse au message : > ------------------------------- > > > J'ai un peu de mal pour la base de registre, > > qqn pourrait il me dire comment : > > _Créer et modifier des clés(modifier les valeur) > > _supprimmer une clé > > _obtenir la valeur d'une clé > > _lister tt les clés présentes dans un dossier > > > > essayez de mettre un exemple, les API de la base de registres sont assez dures... (par rapport au vb ;) ) > > > > merci >
|
|
|
Classé sous : base, modifier, registres, manipuler, clés
|
CalendriCode
| | | L | M | M | J | V | S | D |
| | 1 | 2 | 3 | 4 | 5 | 6 |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 | | | |
|
Téléchargements
Logiciels à télécharger sur le même thème :
|