Here's my test script. Run KIX32 REGTEST.KIX to run with AlternateRegView OFF, or KIX32 REGTEST.KIX $SET=ON to turn it on.


Break On
 
; set the default value for the Alternate Registry View 
If $SET = '' $SET = 'OFF' EndIf
 
; set the alternate registry view 
$ = SetOption('WOW64AlternateRegView', $SET)
 
$DoWait = 0		; set to 1 to pause after each reg change to manually review 
 
'Registry write/delete test on a ' IIf(InStr('%PROCESSOR_ARCHITECTURE% %PROCESSOR_ARCHITEW6432%', 'AMD64'), 64, 32) ' bit system.'  ?
'Kix version: ' @KIX ' ' ?
'Alternate Reg View: ' SetOption('WOW64AlternateRegView')  ?
 
; Does it exist? 
If KeyExist('HKLM\SOFTWARE\TEST')
  'Registry root exists' ?
Else
  'Registry root does not exist.' ?
EndIf
 
 
; Create some reg values 
'Creating reg values:' ?
$ = WriteValue('HKLM\SOFTWARE\TEST\Test','TestVal','This is a test','REG_SZ')
' ' @SERROR ?
$ = WriteValue('HKLM\SOFTWARE\TEST\Test2','TestVal','This is another test','REG_SZ')
' ' @SERROR ?
' Read Value 1: ' ReadValue('HKLM\SOFTWARE\TEST\Test','TestVal') ?
' Read Value 2: ' ReadValue('HKLM\SOFTWARE\TEST\Test2','TestVal') ?
 
; Does it exist? 
If KeyExist('HKLM\SOFTWARE\TEST')
  'Registry root exists' ?
Else
  'Registry root does not exist.' ?
EndIf
 
If $DoWait 'Press any key: ' Get $ ? Else Sleep 2 EndIf
 
? 'Testing EnumKey:' ?
$I = 0
$Val = EnumKey('HKLM\SOFTWARE\TEST', $I)
While Not @ERROR
  $I + 1 '. ' $Val ?
  $I = $I + 1
  $Val = EnumKey('HKLM\SOFTWARE\TEST', $I)
Loop
 
? 'Testing EnumValue:' ?
$I = 0
$Val = EnumValue('HKLM\SOFTWARE\TEST\Test2', $I)
While Not @ERROR
  $I + 1 '. ' $Val ?
  $I = $I + 1
  $Val = EnumValue('HKLM\SOFTWARE\TEST\Test2', $I)
Loop
?
 
If $DoWait 'Press any key: ' Get $ ? Else Sleep 2 EndIf
 
; Delete a reg value 
'Deleting a reg value:' ?
$ = DelValue('HKLM\SOFTWARE\TEST\Test','TestVal')
' ' @SERROR ?
' Read Value 1: ' ReadValue('HKLM\SOFTWARE\TEST\Test','TestVal') ?
' ' @SERROR ?
' Read Value 2: ' ReadValue('HKLM\SOFTWARE\TEST\Test2','TestVal') ?
' ' @SERROR ?
 
If $DoWait 'Press any key: ' Get $ ? Else Sleep 2 EndIf
 
; Delete a reg Key - is empty, so should work 
'Deleting an empty reg key: ' ?
$ = DelKey('HKLM\SOFTWARE\TEST\Test')
' ' @SERROR ?
' Read Value 1: ' ReadValue('HKLM\SOFTWARE\TEST\Test','TestVal') ?
' ' @SERROR ?
' Read Value 2: ' ReadValue('HKLM\SOFTWARE\TEST\Test2','TestVal') ?
' ' @SERROR ?
 
If $DoWait 'Press any key: ' Get $ ? Else Sleep 2 EndIf
 
; Del the entire tree 
'Deleting the entire TEST reg tree:' ?
$ = DelTree('HKLM\SOFTWARE\TEST')
' ' @SERROR ?
' Read Value 1: ' ReadValue('HKLM\SOFTWARE\TEST\Test','TestVal') ?
' ' @SERROR ?
' Read Value 2: ' ReadValue('HKLM\SOFTWARE\TEST\Test2','TestVal') ?
' ' @SERROR ?
 
; Does it exist? 
If KeyExist('HKLM\SOFTWARE\TEST')
  'Registry root exists' ?
Else
  'Registry root does not exist.' ?
EndIf
 
 
_________________________
Actually I am a Rocket Scientist! \:D