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)

dimanche 22 décembre 2002 à 17:04:51 | Manipuler la base de registres

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

dimanche 22 décembre 2002 à 23:39:32 | Re : Manipuler la base de registres

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

dimanche 22 décembre 2002 à 23:48:42 | Re : Manipuler la base de registres

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
>



Cette discussion est classé dans : base, modifier, registres, manipuler, clés


Répondre à ce message

Sujets en rapport avec ce message

Modifier Timeout TCP (MIB) [ par valoue ] Bonjour,Je voudrais modifier une valeur de MIB (Management Information Base).En fait, je voudrais modifier le timeout de TCP.Existe t il une méthode S [ Base de registres ] :: detection des entrées sorties : lecture ecriture [ par JackosKing ] lu,voilà, je voulais savoir si il était possible de detecter si un programme lit, ecrit dans la base de registre.thxJackosKing For EvEr Comment lire écrire et modifier la base de registre ??? [ par andrealphus ] 4ndr&@lphu$je sais que vous m'avez répondu en m'envoyant sur des liens pleins de beaux exemples, mais je n'arrive pas à les incorporer à mon projet... utlité des registres [ par glipper ] Bonjour,J'aimerais savoir dans quel genre de cas il est utile d'utiliser la base des registres. Peut-on creer des clés juste afin qu'elles contiennent écrire, lire et modifier dans la base de registre [ par andrealphus ] 4ndr&@lphu$bonjour,et bien voila, j'ai jeter un coup d'oeil à tout ce qui a été mis la-dessus, je ne sais toujours pas comment faire pour écrire et li Modifier le texte d'un edit [ par Nebula ] Bonjour à tous !J'ai finalement réussi à faire une interface graphique potable (grâce aux exemples de Brunews et Krox), mais j'ai un petit problème av c++,sql, lire dans une base... [ par xav42 ] Bon... j'en arrive a ma seconde etape...lolLà, j'arrive a ajouter des chose dans ma table grace à: mysql_query(mySQL,instruction sql); base de donnée : c++ ou windev ? [ par Sylarme ] Bonjour à tous je suis nouveau ici alors excusez ma question si elle a déjà été posée.En fait devant programmer un programme client/serveur en c++ ave Modifier une messagebox [ par isnotgood ] Bonjour !Je souhaiterai modifier la méthode MessageBox. C'est surtout l'aspect de la fenêtre que je souhaiterai modifier. Est-ce que quelqu'un sait si base de donnee requete a recup S.O.S [ par geradLeblanc2 ] ouchouchami du jour bonjourj 'ai un gros probleme a resoudre tres viteje voudrai recuperer le resultat d'une requete sql de somme (SUM) dans un tablea


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.