Page 1 sur 1

Clé de registre

Publié : jeu. 30/août/2012 14:41
par microdevweb
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.

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
Si quelqu’un peux m'aider Merci d'avance