Clé de registre
Publié : jeu. 30/août/2012 14:41
Dans ce code tout se passe bien sauf lorsque j'essaie de lire la clé de registre précédemment crée. Il pas n'y a pas de message d'erreur mais cela plante de cher plante.
Si quelqu’un peux m'aider Merci d'avance
Code : Tout sélectionner
*SUB_KEY=AllocateMemory(10)
*ID_KEY=AllocateMemory(8)
*NEW_KEY=AllocateMemory(6)
*ID_NEW_KEY=AllocateMemory(4)
*DISPO_NEW_KEY=AllocateMemory(4)
*VALUE_NAME=AllocateMemory(2)
*DAT=AllocateMemory(4)
*OCT_RES=AllocateMemory(50)
Dim Secutity.SECURITY_ATTRIBUTES(0)
PokeS(*SUB_KEY,"Software",10)
PokeS(*NEW_KEY,"MCDSLB",6)
RegOpenKeyEx_(#HKEY_CURRENT_USER,*SUB_KEY,0,#KEY_READ,*ID_KEY)
RegCreateKeyEx_(PeekL(*ID_KEY),*NEW_KEY,0,0,#REG_OPTION_NON_VOLATILE,#KEY_ALL_ACCESS,Secutity(0),*ID_NEW_KEY,*DISPO_NEW_KEY)
If PeekL(*DISPO_NEW_KEY)=#REG_CREATED_NEW_KEY
PokeS(*VALUE_NAME,"KE",19650903)
PokeL(*DAT,1)
RegSetValueEx_(PeekL(*ID_NEW_KEY),*VALUE_NAME,0,#REG_BINARY,*DAT,4)
PokeS(*VALUE_NAME,"DT",Date())
PokeL(*DAT,1)
RegSetValueEx_(PeekL(*ID_NEW_KEY),*VALUE_NAME,0,#REG_BINARY,*DAT,4)
PokeS(*VALUE_NAME,"RE",1111)
PokeL(*DAT,1)
RegSetValueEx_(PeekL(*ID_NEW_KEY),*VALUE_NAME,0,#REG_BINARY,*DAT,4)
EndIf
If PeekL(*DISPO_NEW_KEY)=#REG_OPENED_EXISTING_KEY
PokeS(*VALUE_NAME,"KE",2)
PokeQ(*OCT_RES,4)
RegQueryValueEx_(PeekL(*ID_NEW_KEY),*VALUE_NAME,0,#REG_BINARY,*DAT,*OCT_RES)
Debug PeekL(*DAT)
EndIf