我必须有一个 vbs 脚本,如果它存在于注册表数据中,它可以删除字符串“,vmhgfs”(逗号很重要)。
注册表项是:“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order”
注册表值为“ProviderOrder”(它是一个字符串值)
数据类似于“PICAClientNetwork,SnacNp,vmhgfs,RDPNP,LanmanWorkstation,webclient,PnSson”,但从一台计算机到另一台计算机可能会有很大不同。
该脚本必须检查该数据中是否存在字符串“,vmhgfs”,如果存在,则将其删除。如果它不存在,就结束。
我是 VBS 的新手,我已经开始编写这个脚本:
Dim objShell, RegValue, RegData
RegValue = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder"
set objShell = CreateObject("Wscript.Shell")
RegData = objShell.RegRead(RegKey)
wscript.echo RegData
返回的回声告诉我我的方法是正确的......但没有足够的技能走得更远......你能帮我完成它吗!提前谢谢了 !
编辑(在应用您的建议之前):
嗨,谢谢大家,所以我已经编写了脚本:
Dim objShell, RegValue, RegData, NewRegData
RegValue = "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder"
set objShell = CreateObject("Wscript.Shell")
RegData = objShell.RegRead(RegValue)
if Instr(RegData,",vmhgfs") > 0 then
NewRegData = Replace(RegData,",vmhgfs", "")
objshell.Regwrite RegValue ,NewRegData
Else IF Instr(RegData,"vmhgfs") > 0 then
NewRegData2 = Replace(RegData,"vmhgfs,", "")
objshell.Regwrite RegValue ,NewRegData2
End If
set objshell = nothing
第一个“IF”用于管理“,vmhgfs”在字符串中间的情况。OK 第二个“IF”是管理“vmhgfs”在字符串开头的情况
但是如果 ",vmhgfs" 位于字符串的最后,这将不起作用!!!
我不明白,请帮助!