不用API,也能玩注册表--vb !(downmoon原创) 
补充: 需新建四个command , 名称依次为  write_reg read_reg del_reg reg_run 对应Caption为: 建立新键 读取注册表 删除新键 启动自运行 
OK! 
代码如下: 
'**************************************************** '请务必引用 “Windows Script Host Object Model" Lib ' '**************************************************** ' '**************************************************** '                   Note: ' '需引用“Windows Script Host Object Model" Lib '"HKLM" 指 "HKEY_LOCAL_MACHINE" '"HKCU" 指 "HKEY_CURRENT_USER" '其它几个注册表主键依次类推,但必须大写 '适用于vb 6 简体中文版 '可以读出瑞星的安装ID ' '****************************************************** '          by Downmoon ' '         QQ: 23409408 ' '        [email protected] ' '           2003-2-16 ' '***************************************************** 
Option Explicit Dim mynumber As Integer Private Reg 
  
Private Sub del_reg_Click() Dim Cancel As Integer Dim mydelete As String If MsgBox("Are u sure to delete" & vbTab & "HKLM\SOFTWARE\Rising\Rav\MyRising" & vbTab & "?", vbYesNo, "确认前先保存注册表!!!") = vbNo Then             Cancel = True             Else                                      mydelete = Reg.RegDelete("HKLM\SOFTWARE\Rising\Rav\MyRising") 
MsgBox " Already Deleted!!!!" & vbTab & Chr(13) & "HKLM\SOFTWARE\Rising\Rav\MyRising==== D:\rising\Rav\Rav.exe"             End If 
End Sub 
Private Sub Form_Load() mynumber = 0 Set Reg = New IWshShell_Class End Sub 
  
Private Sub Form_Unload(Cancel As Integer) ilovedownmoon.Caption = "再见" If ilovedownmoon.WindowState <> 1 Then   Dim I As Long   For I = 50 To ilovedownmoon.Height     If ilovedownmoon.Height > 400 Then       ilovedownmoon.Height = ilovedownmoon.Height - 30     End If   Next I   For I = 50 To ilovedownmoon.Width     If ilovedownmoon.Width > 500 Then       ilovedownmoon.Width = ilovedownmoon.Width - 30     End If   Next I End If End End Sub 
Private Sub read_reg_Click() MsgBox ("^_^! Your rising ID is :" & Chr(13) & Chr(13) & Chr(13) & vbTab & Reg.RegRead("HKLM\SOFTWARE\Rising\Rav\NetID") & Chr(13) & Chr(13) & Chr(13) & Chr(13) & vbTab & "OK?") End Sub 
 Private Sub reg_run_Click() On Error Resume Next 
 Dim myrun As String  Dim mynorun As String 
 If mynumber \ 2 = 0 Then 
 myrun = Reg.RegWrite("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\cdplayer", "C:\WINNT\system32\cdplayer.exe", "REG_SZ") MsgBox (Chr(13) & vbTab & "added " & Chr(13) & vbTab & vbTab & "C:\WINNT\system32\cdplayer.exe" & Chr(13) & vbTab & "into  AutoRun!") reg_run.Caption = "取消自运行" '测试 'Label1.Caption = mynumber GoTo num 
Else mynorun = Reg.RegDelete("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\cdplayer") MsgBox (Chr(13) & vbTab & "Deleted " & Chr(13) & vbTab & vbTab & "C:\WINNT\system32\cdplayer.exe" & Chr(13) & vbTab & "out of  AutoRun!") reg_run.Caption = "启动自运行" '测试 'Label1.Caption = mynumber GoTo num 
   End If     num: mynumber = mynumber + 1 
  
End Sub 
Private Sub write_reg_Click() Dim Cancel As Integer Dim mytest As String If MsgBox("Really write" & vbTab & "HKLM\SOFTWARE\Rising\Rav\MyRising" & vbTab & "?", vbYesNo, "确认前先保存注册表!!!") = vbNo Then             Cancel = True             Else             mytest = Reg.RegWrite("HKLM\SOFTWARE\Rising\Rav\MyRising", "D:\rising\Rav\Rav.exe", "REG_SZ") 'REG_SZ 表示键的类型,为缺省值。 MsgBox "HKLM\SOFTWARE\Rising\Rav\MyRising==== D:\rising\Rav\Rav.exe" & vbTab & Chr(13) & "Writed!!!!!" 
            End If End Sub
   
 
  |