Bonsoir

J'ai encore un petit soucis (le dernier ? non... mais bon, y en a des moins en moins).
J'ai un AnsiString :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
AnsiString TouteLaChaine = "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\ComputerName";
Je regarde quel est le 1er élément (ici "HKey_Local_Machine") :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
int t= TouteLaChaine.Pos("\\");
BaseDeLaChaine = TouteLaChaine.SubString(1,t-1);
J'ai donc en retour une AnsiString :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
BaseDeLaChaine = "HKEY_LOCAL_MACHINE"
Mais vu que c'est pour utiliser dans :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
registreMachineDistante->RootKey = hkey;
J'ai une erreur si je fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
registreMachineDistante->RootKey = BaseDeLaChaine;
Normal vu qu'il s'attend à un Hkey et que je lui file une AnsiString.
Je comprend bien mon erreur mais je trouve pas la solution :-(

J'ai trouvé une alternative qui consiste à faire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
if (BaseDeLaChaine=="HKEY_CLASSES_ROOT") {
	 hkey = HKEY_CLASSES_ROOT;
   }
if (BaseDeLaChaine=="HKEY_LOCAL_MACHINE") {
	 hkey = HKEY_LOCAL_MACHINE;
   }
...
Mais c'est pas propre je trouve...
Y aurait 'il moyen de convertir mon AnsiString en Hkey svp ?

Merci grandement pour votre aide
(je sais pas si il faut préciser : Borland 2006)