ValueListEditor et Registre Windows

Résolu
Signaler
Messages postés
4
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2004
-
Messages postés
1727
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 novembre 2021
-
Bonjour,

J'ai une petite question,
Voici ce que je souhaiterais faire, j'aimerais faire apparaître dans un "ValueListEditor" toutes les clefs et valeurs contenue dans un certain dossier des registre windows.

Heum, je sais je ne suis pas très clair, je suis désolé, donc je vais vous donner un exemple.

procedure TForm1.BitBtn1Click(Sender: TObject);
Var Registre:TRegistry;
begin
Registre:=TRegistry.Create;
try
Registre.RootKey:=HKEY_LOCAL_MACHINE;
Registre.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Run',False);
ValueListEditor1.InsertRow('MrPostMan',Registre.ReadString('MrPostman'),false);
Registre.CloseKey;
Registre.Free;
except
Showmessage('erreur');
Registre.Free;
end;
end;

Ceci fait que dans la colone "Key" apparaitra le nom de la clef de registre 'MrPostman' et dans 'valeur' sa valeur.
Mais avec ce code, je n'arrive à voir une clef et sa valeur seulement si je la pointe (ici, j'ai du pointer la clef MrPostman)
Mais ce que j'aimerais c'est qu'il m'affiche toutes les clefs se retrouvant dans le 'dossier' \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Par exemple chez moi dans ce dossier, j'ai une dizaine de clefs, et donc j'aimerais que cette dizaine de clef apparaissent dans le ValueListEditor.

Est-ce que qqn pourrait m'expliquer comment procéder?

D'avance un très grand merci.

6 réponses

Messages postés
1727
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 novembre 2021
8
Même topo, mais avec

GetValueNames(TaStringList);


Va donc faire un tour sur l'aide en ligne de Delphi, rubrique TRegistry, et tu en sauras plus que moi ! ;)

Bonne prog' :-p
Messages postés
1727
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 novembre 2021
8
La BdR est à la mode, en ce moment... :approve)

GetKeyNames(TaStringList);


Ta StringList peut être tout objet de type TStringList (StringList, Memo, ListBox, etc...)

Bonne prog' :-p
Messages postés
4
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2004

Salut, merci pour 'GetKeyNames'

Puis-je encore ?

En fait, voilà, je ne sais même pas comment lister toutes les clefs contenues dans un repertoire spécifique de ma bdr ...
:'(

Tu pourrais pas me montrer comment tu ferais pour récuperer une liste des clefs se trouvant dans le répertoire \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ ?
enfin si ça ne te dérange pas...

D'avance merci

Jo
Messages postés
4
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2004

Salut,

un grand merci pour cette réponse ça m'a bien dépanner

thx,

J'ai encore une question (ehhh ouiiii :-D)

Voilà,

lorsque la liste est chargée, il y a moyen de sélectionner une ligne (il suffit de cliquer dessus)
mais j'aimerais bien pouvoir récuperer les données contenues sur la ligne sélectionnée.
Comment puis-je faire ?

J'ai regardé, mais je trouve pas.

Imagine que le valuelisteditor se présenter comme ceci

clef | valeur
-------------------------------------
bla | blabla
bli | blibli

etc....

et j'aimerais, par exemple que si l'utilisateur clique sur la ligne contenant "bli" comme clef
qu'un message apparaisse en lui disant par exempl vous avez sélectionner la clef portant le nom 'bli'

Comment pourrais-je donc récuperer la valeur contenue dans la ligne sélectionnée ?

a+

j
Messages postés
4
Date d'inscription
dimanche 27 juin 2004
Statut
Membre
Dernière intervention
7 juillet 2004

J'ai trouvé.

merci pour m'avoir guidé au départ. :)

J
Messages postés
1727
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
6 novembre 2021
8
Content pour toi, j_hawk :approve)

Moi, je suis sur d'autres sujets de prog (bien prise de tête) en ce moment, et j'avoue que j'avais laissé ta question en "standby".

Tu en sais maintenant plus que moi ! :dissapprove)

Bonne prog', à + :-p