①.、Windows+R调出运行界面.
请使用VB.NET的"My"功能: '添加
My.Computer.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True).SetValue("running", "C:\myapp.exe") ' 删除
My.Computer.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", True).DeleteValue("running")
My.Computer.Registry.LocalMachine.OpenSubKey("software\microsoft\windows\currentversion\run").DeleteValue(name)
End If
Next
这不是废话吗,DeleteSubKey只能删除调用实例的子项,并不能直接删除子子项.
Set wshShell = CreateObject( "WScript.Shell" )
wshShell.RegWrite "HKCU\TestKey\", ""
wshShell.RegWrite "HKCU\TestKey\DWordTestValue", 1, "REG_DWORD"
wshShell.RegWrite "HKCU\TestKey\SubKey\StringTestValue", "Test", "REG_SZ"
WScript.Echo "HKCU\TestKey\DWordTestValue = " _
wshShell.RegRead( "HKCU\TestKey\DWordTestValue" )
WScript.Echo "HKCU\TestKey\SubKey\StringTestValue = """ _
wshShell.RegRead( "HKCU\TestKey\SubKey\StringTestValue" ) """"
wshShell.RegDelete "HKCU\TestKey\SubKey\"
wshShell.RegDelete "HKCU\TestKey\"
Set wshShell = Nothing
详细出处参考:
给你一个简单可行的方案
然后在代码中把这个字符串变量当做普通的文本文件写出来,并命名为tmp.reg,然后调用一行代码将其导入到注册表,最后再将这个临时文件删除
导入方法
shell "regedit /s tmp.reg",0
===================================
如果不愿意这样做,可以参照下面的问题答案
Private Sub Command1_Click()
WriteTXT "c:\tmp.reg", Join(regdata, vbCrLf)
Shell "regedit /s c:\tmp.reg"
Kill "c:\tmp.reg"
End Sub
Sub WriteTXT(FileName As String, TXT As String)
Dim fn As Long: fn = FreeFile
Open FileName For Binary As #fn
Put #fn, , TXT
Close #fn
测试通过
以上就是土嘎嘎小编为大家整理的vb.net删除注册表值相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!