Bonjour,
aucune réponse...
je me suis débrouillé comme j'ai pu, la j'en suis à avoir réussi àà extraire toutes les clés de la base dans un fichier texte que je lis avec une autre fonction dans un dictionnaire python.
Mon problème maintenant c'est que mes clés s'enregistrent dans un "format" PyHKEY, ainsi qu'avec les ruches qui s'affichent dans un format numérique.. ex:
2147483650\\\VideoBiosDate:#:30322f30352f3230
Voici le code de mon programme:
#-*-coding:UTF-8-*-
import _winreg # biblio d'autopsie de la base de registre
import os # biblio de pilotage de l'os
import binascii # bibilio de conversion
def ValueKey(key, sname, sParse):
donnees = ""
i = 0
try:
while True:
tp = _winreg.EnumValue(key,i)
valuename = tp[0]
valuedata = tp[1]
valuetype = tp[2]
if valuename == '':
valuename = str(sParse) + 'Par defaut'
else:
valuename = str(sParse) + str(valuename)
if valuedata == '':
pass
else:
str(valuedata)
if valuetype 8 or valuetype 9 or valuetype == 3 or valuetype == 1 : # si reponse illisible =>
donnees +="\n" + str(valuename) + ":#:" + binascii.hexlify(str(valuedata)) # donnees == donnees convertis en hexa
else:
donnees +="\n" + str(valuename) + ":#:" + str(valuedata)
i = i+1
except EnvironmentError:
pass
except UnicodeEncodeError:
pass
fichier = open('Etat0.txt','a')
donnees = donnees[0:len(donnees)-1]
fichier.write(donnees)
fichier.close()
def ParseRegister(sRucheName, sParse):
bContinue = True
index = 0
while bContinue :
try:
sName = _winreg.EnumKey(sRucheName, index)
# Ouverture de la sous clé afin de pouvoir la parser
key = _winreg.OpenKey(sRucheName,sName,_winreg.KEY_READ)
sPath = str(sParse) + str(sRucheName) +os.sep
ValueKey(key, sName, sPath)
ParseRegister(key, sPath)
except WindowsError,e:
bContinue = False
index +=1
##MaIN
lRucheName = [_winreg.HKEY_LOCAL_MACHINE,_winreg.HKEY_CURRENT_CONFIG,_winreg.HKEY_CLASSES_ROOT,_winreg.HKEY_CURRENT_USER,_winreg.HKEY_USERS]
NbRuche = len(lRucheName)
cpt = 0
spath = ''
while cpt < NbRuche :
NoRuche = lRucheName[cpt]
print NoRuche
ParseRegister(NoRuche, spath)
cpt += 1
J'aurais donc besoin d'aide pour que les ruches s'affichent : HKEY_LOCAL_MACHINE, et que les sous clés qui menent au clés s'affichent de la même manière que lorsqu'on regarde la base de registre et non au format "PyHKEY:0000019C".
En espérant obtenir un peu plus d'aide!!
Merci à vous.