ACCÈS A LA BASE DE REGISTRE SANS API ! V2

LeKamé - 12 avril 2001 à 20:54
Number7 Messages postés 23 Date d'inscription vendredi 1 février 2002 Statut Membre Dernière intervention 27 décembre 2010 - 18 oct. 2010 à 03:06
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/912-acces-a-la-base-de-registre-sans-api-v2

Number7 Messages postés 23 Date d'inscription vendredi 1 février 2002 Statut Membre Dernière intervention 27 décembre 2010 1
18 oct. 2010 à 03:06
Simple, claire et facile à utilisé.
J'ai rien à redire.
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
12 nov. 2004 à 23:12
Si tu sais declarer et utiliser une fonction d'API alors celles de la base de registres ne sont pas plus compliquees que les autres.
Fais une recherche 'source' sur RegOpenKeyEx, y a surement des trucs sinon utilise ma dll (v 9 derniere je crois).
mathieumg Messages postés 558 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 18 février 2006
12 nov. 2004 à 23:01
BruNews saurais-tu ou je pourrais trouver un script de reg qui utilise les Api et pleinement fonctionnel ? Ni sur CS ni sur google je n'ai trouvé un qui marche parfaitement...


Mathieu M-Gosselin
mathieumg@qc-net.com
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
12 nov. 2004 à 16:33
GregoH > les acces base de registres doivent se faire AVEC les APIs et non sans. Un antivirus correct interceptera toute tentative d'acces par la machine script, API est fait pour cela et on DOIT l'utiliser.

BruNews, MVP VC++
GregoH Messages postés 3 Date d'inscription jeudi 11 novembre 2004 Statut Membre Dernière intervention 12 novembre 2004
12 nov. 2004 à 15:30
Bonjour,
Je viens de récupérer le code source servant à lire, écrire ou
supprimer une clé dans la base de registre sans utiliser les API. J'a ibien
compris le principe, malheureusement avec ce systeme on ne peut pas donner
nommer la valeur que l'on veut ajouter.
Je m'explique, j'aimerais ajouter une valeur chaine dans :
HKEY_CURRENT_USER\Environment
Cette valeur aura pour nom : "CNEXTBACKGROUND" et sa valeur sera "no"

Avec le code, si j'écrit : Reg.Ecrit HKEY_CURRENT_USER, "Environment",
"no", REG_String lorsque je regarde la base de registre je vais avoir
"no" dans la valeur par défault et non pas une valeur nommée
"CNEXTBACKGROUND" ayant "no" pour données.

De plus si j'écrit Reg.Ecrit HKEY_CURRENT_USER,
"Environment\CNEXTBACKGROUND", "no", REG_String lorsque je regarde la base de registre je
vais avoir une clé sous Environment et ce n'est pas ce que je veux.

Si vous avez la solution je suis preneur car j'en ai vraiment baesoin
pour le logiciel.

Merci beaucoup. En tous les cas le code est génial pour supprimer ou
éffacer les clés, vraiment pratique.

Greg.
mortiis Messages postés 120 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 9 mars 2008
30 oct. 2004 à 20:53
Merci ton script fonctionne, mais mon quand je veut utiliser la fonction Ecrit, mon antivirus le détecte comme un virus.

C'est pas pratique si tu veut utiliser sa dans un prog que tu veut distribuer.

Donc sa vaut rien ce script c'est un gros 0.
A moins que tu ait une solution a ce problemme.
mathieumg Messages postés 558 Date d'inscription mardi 4 février 2003 Statut Membre Dernière intervention 18 février 2006
9 août 2004 à 18:51
J'ai mit le code dans reg.bas et dans ma form lorsque je met dans le onload de ma form1 :

MsgBox Reg.Lit(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\ProductId")

Ça me dit object required :(

Merci de m'aider

Mathieu M-G
mathieumg@qc-net.com
jojokerker Messages postés 10 Date d'inscription mercredi 6 août 2003 Statut Membre Dernière intervention 17 mai 2006
22 déc. 2003 à 15:14
Ton code est clair,simple,court.
Que dire ... Beau boulot vraiment respect.
Bonne continuation et Merci.
FabriceH2 Messages postés 3 Date d'inscription lundi 14 juillet 2003 Statut Membre Dernière intervention 18 juillet 2003
18 juil. 2003 à 01:14
Super ton code même si je n'ai eu besoin que de la partie "lire"!! (je t'ai mis un 10)
marche nickel sous XP
j'ai eu un petit pb en lecture car à la fin du soi-disant "endroit" , j'avais oublié un ""
MERCI
Nargzul Messages postés 438 Date d'inscription vendredi 9 mai 2003 Statut Membre Dernière intervention 26 juillet 2007 4
16 juil. 2003 à 14:14
je cherche comment arriver, sans api, a faire un truc qui arrive à regarder ce qu'il y a dans un dossier dans la base de registre, pour but par exemple de savoir tout les programmes installés...
cs_Bollocks Messages postés 2 Date d'inscription mardi 17 décembre 2002 Statut Membre Dernière intervention 14 juillet 2003
14 juil. 2003 à 15:08
C'est pas mal tout ça !!! Ca marche bien avec des "DWORD" mais avec
des "BINARY" j'arrive à écrire un octet mais pas à le relire !!!
Et comment peut-on ajouter plusieurs octets et les relire ????
chavers Messages postés 1 Date d'inscription jeudi 20 février 2003 Statut Membre Dernière intervention 13 mai 2003
13 mai 2003 à 19:34
heu....
superbe !! 10/10
mais avec function au lieu de sub pour ecrit() ca marche mieux, g bu ou c moi ? ;o)
dragonspyro93 Messages postés 8 Date d'inscription mardi 11 février 2003 Statut Membre Dernière intervention 17 avril 2003
17 avril 2003 à 17:22
comment acceder a une cle de registre dite par default ??

je ne sais pas comment la nommer puisquelle n a pas de nom

exemple :

Reg.Lit(HKEY_LOCAL_MACHINE, _
"classeshttpshellopencommanddefault"

ca marche pas !
Pem13lw Messages postés 73 Date d'inscription mardi 21 janvier 2003 Statut Membre Dernière intervention 23 février 2005
3 mars 2003 à 10:49
Bien, trés bien, note : 8, par contre je comprend pas pourquoi il me dit que "Racine incorrecte dans la clé du registre" avec windows 2000 par contre fonctionne parfaitement avec 98 et XP pro.

Bravo
amarco Messages postés 4 Date d'inscription jeudi 1 août 2002 Statut Membre Dernière intervention 26 août 2002
26 août 2002 à 13:29
Felicitations!
il est vraiment pratique
A qui puisse interesser: Il fonctionne Ok sous win98, win2000 et XP
cs_taye Messages postés 24 Date d'inscription samedi 27 avril 2002 Statut Membre Dernière intervention 5 juin 2002
5 mai 2002 à 12:34
bravo :) simple et efficace !
SoniqExnihilo Messages postés 25 Date d'inscription vendredi 26 avril 2002 Statut Membre Dernière intervention 16 février 2003
26 avril 2002 à 14:39
SoniqExnihilo Messages postés 25 Date d'inscription vendredi 26 avril 2002 Statut Membre Dernière intervention 16 février 2003
26 avril 2002 à 14:36
exelent se bout de code !!!
et pas besoin de prendre avec les API , meme pour les dwords car la methode RegWrite prend un troisieme parametre pour le type parmi les 4 suivant

String REG_SZ
String REG_EXPAND_SZ
Integer REG_DWORD
Integer REG_BINARY

voila
cestoutmoi Messages postés 10 Date d'inscription lundi 16 octobre 2000 Statut Membre Dernière intervention 4 janvier 2005
14 mars 2002 à 09:54
Moi, c'est grâce au virus LoveLetter que j'ai appris ce genre de petit truc sympa.
Il manque quand même de quoi récupérer toutes les clé d'une arborescence.
exemple: je veux récupérer toutes les clé de HKLMSOFTWAREmicrosoftwindowscurrentversion
un
sans les connaître à l'avance.
De plus en plus de virus y placent des clés aléatoires. (genre KlezE)
Qui à la soluce !!
neojoce Messages postés 134 Date d'inscription jeudi 7 février 2002 Statut Membre Dernière intervention 16 juin 2002
6 mars 2002 à 01:20
Vous etes dont ben chien, seulement 5.../10 ???? Bande de ...
9/10 pq c exactement kes ke j'cherchai !!
ramseb Messages postés 1 Date d'inscription jeudi 17 janvier 2002 Statut Membre Dernière intervention 18 janvier 2002
18 janv. 2002 à 09:10
Bon programme mais comment faire pour récupérer les données de type binaire?
Au fait pas besoin des abréviations de HKEY, ça marche avec les noms complets
Bien oui, il y en a plus que 3 mais je ne sais a quoi correspond les autres (par ex : HKEY_LOCAL_MACHINE est HKLM)
Si tu le trouve, je veux bien les rajouter.
c'est bien mais ..on peut pas acéder au reste?
y'a plus de 3 key's en vrai

stye KEY_USERS
ou
KEY_CONFIG etc...
c pas mal dis donc ca peut etre util !
hum .. c'est bien !!!!!!