VB自我销毁自我删除

Option Explicit

Private Declare Function GetModuleFileName Lib “kernel32” Alias “GetModuleFileNameA” (ByVal hModule As Long, ByVal lpFileName As String, ByVal nSize As Long) As Long
Private Declare Sub ExitProcess Lib “kernel32” (ByVal uExitCode As Long)

Private Sub KillMe()
Dim MyFilename As String
Dim tmp As String * 255
Dim l As Integer
l = GetModuleFileName(0, tmp, 255)
MyFilename = Mid(tmp, 1, l)
Shell “cmd /c del “”” & MyFilename & “”“”, vbHide
ExitProcess (0)
End Sub

Private Sub Command1_Click()
KillMe
End Sub

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
VB(Visual Basic)是一种编程语言,可以用于操作Windows系统的注册表。在VB中,可以使用Registry的DeleteSubKey和DeleteSubKeyTree方法来删除注册表项。 删除注册表项需要管理员权限,因此在删除注册表项之前,需要确保程序以管理员身份运行。 首先,我们需要引入Microsoft.Win32命名空间,以便能够使用Registry。接下来,创建RegistryKey对象并使用OpenBaseKey方法打开注册表的指定部分,比如HKEY_CURRENT_USER或HKEY_LOCAL_MACHINE等。 然后,通过调用CreateSubKey方法创建一个指向待删除项的子项的RegistryKey对象。接着,使用DeleteSubKey或DeleteSubKeyTree方法来删除该子项。 以下是一个示例代码: ```vb Imports Microsoft.Win32 Public Class MainForm Private Sub btnDeleteRegistry_Click(sender As Object, e As EventArgs) Handles btnDeleteRegistry.Click Try Dim keyPath As String = "Software\MyApp\Settings" Using regKey As RegistryKey = Registry.CurrentUser.OpenSubKey(keyPath, True) If regKey IsNot Nothing Then regKey.DeleteSubKey("SubKeyToDelete", False) '或者使用DeleteSubKeyTree方法删除整个子项 MessageBox.Show("成功删除注册表项!") Else MessageBox.Show("找不到注册表项!") End If End Using Catch ex As Exception MessageBox.Show("删除注册表项出错:" & ex.Message) End Try End Sub End Class ``` 以上代码中,我们打开了HKEY_CURRENT_USER\Software\MyApp\Settings部分的注册表,并删除了名为"SubKeyToDelete"的子项。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

键盘上的舞指

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值