用VB做一个清理启动项的按钮

来源:百度知道 编辑:UC知道 时间:2024/09/24 20:32:50
用VB 建一个按钮,点击后执行以下注册表修改:1.删除"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"的默认值。2.删除"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run"的默认值。3.删除"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\MSConfig\startupreg"里的项。4.删除"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\MSConfig\startupfolder"里的项。5.在"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run"里新建个ctfmon.exe,数值为%systemroot%\system32\ctfmon.exe 。
也就是说写一个清理启动项的按钮。验证成功后再高分追加。
要求是删除指定目录下所有的项,有可能是一项或多项,并且名子未知。如果指定是CTFMON这一项很容易写的,继续努力,帮忙搞定,高分追加
辛苦辛苦,虽然我已搞定,分还是属于你,谢谢!

一、建立一个模块:
Option Explicit

Global Const REG_SZ As Long = 1
Global Const REG_DWORD As Long = 4
Global Const REG_BINARY As Long = 3

Global Const HKEY_CLASSES_ROOT = &H80000000
Global Const HKEY_CURRENT_USER = &H80000001
Global Const HKEY_LOCAL_MACHINE = &H80000002
Global Const KEY_ALL_ACCESS = &H3F
Global Const REG_OPTION_NON_VOLATILE = 0

Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Declare Function RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, ByVal lpSecurityAttributes As Long, phkResult As Long, lpdwDisposition As Long) As Long
Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, B