goretex鞋子能打鞋油吗:帮忙开发一款这样的软件(vb)

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/05 15:49:16
软件上面有一个按钮,单击后就可以修改注册表。
比如:单击后就可以给注册表添加一个项。

如何实现!

这个比较复杂一点,我以禁止注册表编辑器和取消禁止注册表编辑器为例说一下。
你新建一个窗体form1,在窗体上添加2个按钮command1和command2,添加一个模块Module1,模块加入如下代码:

Public Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Public Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpdata As Any, lpcbData As Long) As Long
Public Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, lpdata As Any, ByVal cbData As Long) As Long
Public Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Public Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long
Public Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
Public Const error_success = 0&
Public Const error_baddb = 1009&
Public Const error_badkey = 1010&
Public Const error_cantopen = 1011&
Public Const error_cantread = 1012&
Public Const error_cantwrite = 1013&
Public Const error_registry_recovered = 1014&
Public Const error_registry_corrupt = 1015&
Public Const error_registry_io_failed = 1016&
Public Const hkey_classes_root = &H80000000
Public Const hkey_current_user = &H80000001
Public Const hkey_local_machine = &H80000002
Public Const REG_SZ = 1
Public Const REG_DWORD = 4

然后在窗体form1里加入如下代码
Dim retvalue As Long
Dim keyid As Long
Dim keylong As Long
Dim keyvalue As String

Private Sub Command1_Click()
keylong = 1
retvalue = RegCreateKey(hkey_current_user, "software\microsoft\windows\Currentversion\policies\system", keyid)
retvalue = RegSetValueEx(keyid, "disableregistrytools", 0&, REG_DWORD, keylong, 4)
End Sub

Private Sub Command2_Click()
retvalue = RegCreateKey(hkey_current_user, "software\microsoft\windows\Currentversion\policies\system", keyid)
keyvalue = RegDeleteValue(keyid, "disableregistrytools")
End Sub

这样按command1就是禁止使用注册表,按command2就是取消禁止使用注册表,你可以根据这个代码修改来获得更多的功能。

楼上,用了许多API,又十分复杂,其实这样就可以了:

Private Sub Command1_Click()
Set w = CreateObject("Wscript.Shell")
w.regwrite "HKLM\SOFTWARE\Microsoft\Test\Name", "User"
End Sub

这就可以在HKLM\SOFTWARE\Microsoft下新建一个Test项,并向这个项添加字符串值Name赋值User.

注册表是很复杂的东西 ‘‘之后一个按纽的修改器我觉得有难度‘‘‘
当然要是做一个乱改或者修改指定项的到是可以‘‘‘
自己编辑一个注册表文件就OK啦‘‘‘

呵呵,兄弟,想做木马啊