Source wurde al 15.07.2007 de el MMJ-Quellcodesammlung (Dietmar Horn) en el Babyklappe en XProfan.Com abgelegt:
Registry: Valor en una Registryschlüssel löschen
RegDeleteValue löscht una Valor en una Registryschlüssel
L1(Param.1 Longint ): Handle uno ya geöffneten Keys como LongInt oder folgende vordefinierte Werte =>
HKEY_CLASSES_ROOT = $80000000
HKEY_CURRENT_USER = $80000001
HKEY_LOCAL_MACHINE = $80000002
HKEY_USERS = $80000003
L2(Param.2 Longint ) oder B3(Param.3 Zona ): Handle oder Bereichsvariable con el Namen des Wertes, el gelöscht voluntad se.
Declarar Handle#,Fehler&,Key#,Name#,Valor#,Size#,Type#,Button&,Button2&
Declarar Writewert$,Valor2#
Def @Regclosekey(1) !ADVAPI32,RegCloseKey
Def @Regsetvalueex(6) !ADVAPI32,RegSetValueExA
Def @Regcreatekey(3)!ADVAPI32,RegCreateKeyA
Def @Regdeletekey(2) !ADVAPI32,RegDeleteKeyA
Def @Regdeletevalue(2) !ADVAPI32,RegDeleteValueA
Def @Regopenkeyex(5) !ADVAPI32,RegOpenKeyExA
Windowstyle 31
Windowtitle Registryschlüssel redactar
Ventana 0,0-640,440
Let Button&=@Createbutton(%Hwnd,Schlüssel löschen,20,300,200,30)
Let Button2&=@Createbutton(%Hwnd,Werte löschen,320,300,200,30)
Dim Key#,260
Dim Handle#,4
Dim Name#,250
Dim Size#,4
Dim Valor#,260
Dim Valor2#,4
Dim Type#,4
String Key#,0=SoftwareMMJ-Test
Let Fehler&=@Regcreatekey($80000001,Key#,Handle#)
Imprimir Fehlercode beim Erstellen/Öffenen des Schlüssels SoftwareMMJ-Test: ;Fehler&
If Fehler&=0
Let Writewert$=Mi Software
String Valor#,0=Softwarepfad
Let Fehler&=@Regsetvalueex(@Largo(Handle#,0),@Addr(Writewert$),0,1,Valor#,@Len(Softwarepfad)+1)
Imprimir Fehlercode RegSetValueEx Softwarepfad: ;Fehler&
Let Writewert$=Seriennummer
Largo Valor2#,0=22334
Let Fehler&=@Regsetvalueex(@Largo(Handle#,0),@Addr(Writewert$),0,4,Valor#,4)
Imprimir Fehlercode RegSetValueEx Seriennummer: ;Fehler&
Let Writewert$=Byteliste
Claro Valor#
Byte Valor#,0=65
Byte Valor#,1=66
Byte Valor#,2=67
Byte Valor#,3=68
Let Fehler&=@Regsetvalueex(@Largo(Handle#,0),@Addr(Writewert$),0,3,Valor#,10)
Imprimir Fehlercode RegSetValueEx Byteliste: ;Fehler&
Imprimir Fehlercode RegCloseKey: ;@Regclosekey(@Largo(Handle#,0))
Endif
Disponer Type#
Disponer Valor#
Disponer Valor2#
Disponer Key#
Disponer Handle#
Disponer Name#
Disponer Size#
Mientras que 0=0
Waitinput
If @Getfocus(Button&)
Dim Key#,260
Imprimir
String Key#,0=SoftwareMMJ-Test
Let Fehler&=@Regdeletekey($80000001,Key#)
Imprimir Fehlercode beim Löschen des Schlüssels SoftwareMMJ-Test: ;Fehler&
Disponer Key#
@Setfocus(%Hwnd)
Elseif @Getfocus(Button2&)
Imprimir
Dim Key#,260
Dim Handle#,4
Dim Name#,256
String Key#,0=SoftwareMMJ-Test
Let Fehler&=@Regopenkeyex($80000001,Key#,0,$F003f,Handle#)
Imprimir Fehlercode beim Öffnen des Schlüssels SoftwareMMJ-Test: ;Fehler&
If Fehler&=0
String Name#,0=Mi Software
Let Fehler&=@Regdeletevalue(@Largo(Handle#,0),Name#)
Imprimir Fehlercode beim Löschen des Wertes Mi Software: ;Fehler&
String Name#,0=Seriennummer
Let Fehler&=@Regdeletevalue(@Largo(Handle#,0),Name#)
Imprimir Fehlercode beim Löschen des Wertes Seriennummer: ;Fehler&
String Name#,0=Byteliste
Let Fehler&=@Regdeletevalue(@Largo(Handle#,0),Name#)
Imprimir Fehlercode beim Löschen des Wertes Byteliste: ;Fehler&
Imprimir Fehlercode RegCloseKey: ;@Regclosekey(@Largo(Handle#,0))
Endif
Disponer Key#
Disponer Handle#
Disponer Name#
@Setfocus(%Hwnd)
Endif
Wend