我编写了一个脚本来检查 Windows 是否启用了防火墙。它看起来不错,但它总是说防火墙已启用 - 即使它已禁用。我花了很多时间分析它,但没有结果——你能帮我弄清楚它有什么问题吗?
Dim strFirewallStatus, strComputer
strComputer = "localhost"
Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" &_
strComputer & "\root\default:StdRegProv")
If err.number = 0 Then
objReg.GetDWORDValue &H80000002, "SYSTEM\CurrentControlSet\" &_
"Services\SharedAccess\Parameters\FirewallPolicy\" &_
"DomainProfile\", "EnableFirewall", dwValue
If dwValue <> 0 Then
strFirewallStatus = "Firewall is enabled"
Else
strFirewallStatus = "Firewall is disabled"
End If
WScript.Echo strFirewallStatus
Else
WScript.Echo strComputer & " - Error" & err.number & " : " &_
err.description
err.clear
End if
我将该脚本保存为 .vbs 文件。
顺便说一句 - 我如何在系统启动时设置脚本?我希望此脚本在首次启动后自动将信息添加到注册表。