FONCTIONS & PROCÉDURES TRAITANT LE REGISTRE

Bruto
Messages postés
214
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
14 mai 2004
- 21 août 2002 à 10:55
Bruto
Messages postés
214
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
14 mai 2004
- 21 août 2002 à 10:55
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/12104-fonctions-procedures-traitant-le-registre

Bruto
Messages postés
214
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
14 mai 2004

21 août 2002 à 10:55
ok je viens de tester, c'est juste je ne savais pas que les variables HKEY étaient de la librairie windows. Quand je faisais une recherche sur ces variables dans l'aide Delphi je ne trouvais rien. Vois-tu je suis développeur VB et je migre vers Delphi et en VB, il est indispensable de définir les constantes. En revanche, comme tu as l'air de t'y connaître en Delphi, je te conseille de regarder plus souvent les questions du forum. Merci DelphiCool pour ton aide, je pense que ce source aura relevé un point pas toujours évident.
DelphiCool
Messages postés
455
Date d'inscription
mardi 24 juillet 2001
Statut
Modérateur
Dernière intervention
10 mars 2009

20 août 2002 à 18:16
je viens de tester, ça marche tres biens

les HKEY sont definie dans l'unitée Windows

essaye ce source de dll:

library dllreg;

uses windows, registry;


procedure ecrisreg; stdcall;
var REG :tregistry;
begin
reg := tregistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
reg.OpenKey('DelphiCool', true);
reg.WriteString('site web', 'http://delphicool.developpez.com');
reg.Free;
end;




function litreg:pchar; stdcall;
var REG :tregistry;
s :string;
begin
reg := tregistry.Create;
reg.RootKey := HKEY_LOCAL_MACHINE;
if reg.KeyExists('DelphiCool') then
begin
reg.OpenKey('DelphiCool', false);
s := reg.ReadString('site web');
result := pchar(s);
end
else result := '';
reg.Free;
end;


exports ecrisreg, litreg;



end.
Bruto
Messages postés
214
Date d'inscription
jeudi 21 mars 2002
Statut
Membre
Dernière intervention
14 mai 2004

20 août 2002 à 16:45
en fait dans ma dll, les variables HKEY n'étaient pas reconnus. Dans une application, ça marche parfaitement pas besoin de préciser les constantes mais dans une dll tu es obligé de les préciser sinon ça marche pas
Essai de migrer ton prog d'une app vers une dll tu verras
Le principe de ce source n'est pas de montrer comment écrire dans la base de registre mais surtout de voir la procédure dans une dll et donc les constantes qui permettent un fonctionnement correct.
DelphiCool
Messages postés
455
Date d'inscription
mardi 24 juillet 2001
Statut
Modérateur
Dernière intervention
10 mars 2009

20 août 2002 à 14:54
c'est quoi qui ne marchait pas avec ta dll??

car j'ai deja fait des procdure et fonction traitant avec labase des registre et je n'ai eu aucun probleme

je n'ai jamais utilisé les constante comme tu le fait