zounar_j5
Messages postés2Date d'inscriptionmardi 27 avril 2004StatutMembreDernière intervention25 novembre 2022
-
25 nov. 2022 à 21:40
Bonjour à tous
J’ai trouvé ces routines qui fonctionnent à merveille, mais ce n’est pas tout à fait ce que je cherche :
Pour lire : Cette procédure serait à modifier
Uses Registry;
procedure TForm1.Button1Click(Sender: TObject); Var Registre : TRegistry; begin //Récupère l'url de la page de démarrage
Registre:=TRegistry.Create; //Crée un objet TRegistry
Registre.RootKey:=HKEY_CURRENT_USER; //Définit la clé principale
Registre.OpenKey('\Software\Microsoft\Internet Explorer\Main',False); {"OpenKey" ouvre une clé particulière (False signifie que la clé n'est pas crée si elle n'existe pas}
Edit1.Text:=Registre.ReadString('Start Page'); //Renvoie un string à partir du nom de la valeur
Registre.CloseKey; //Ferme la clé
Registre.Free; //Détruit l'objet end;
Pour écrire : Cette procédure me convient juste
Uses Registry;
procedure TForm1.Button2Click(Sender: TObject); Var Registre : TRegistry; begin //Modifie l'url de la page de démarrage
Registre:=TRegistry.Create; //Crée un objet TRegistry
Registre.RootKey:=HKEY_CURRENT_USER; //Définit la clé principale
Registre.OpenKey('\Software\Microsoft\Internet Explorer\Main',False); {"OpenKey" ouvre une clé particulière (False signifie que la clé n'est pas crée si elle n'existe pas}
Registre.WriteString('Start Page',Edit1.Text); //Stocke le contenu de Edit1 dans "Start Page"
Registre.CloseKey; //Ferme la clé
Registre.Free; //Détruit l'objet end;
Cela fonctionne bien, mais ce que je voudrais, c’est que dès que lance mon programme, on va vérifier si la clé existe.
Oui, on récupère la valeur
Non, on nous dirige vers la routine écrire.
Donc, ce que je cherche, de ne pas passer par TForm1.Button1Click(Sender: TObject);
J’ai vu qu’on peut utiliser KeyExists, mais je ne trouve pas la solution.