我在 Windows 7 机器上使用防火墙,我想删除而不是禁用现有规则,我想知道如何做到这一点。要禁用,我正在做:
function Disable-IncomingFirewallRule($ruleName)
{
$firewall = New-Object -ComObject hnetcfg.fwpolicy2
try
{
$rule = $firewall.Rules.Item($ruleName)
$rule.Enabled = $false
Write-Host "Firewal rule disabled"
}
catch
{
Write-Host -ForegroundColor Red "Rule does not exist"
}
但是在此之后,规则仍然存在,并且当我运行几次时,我将有许多禁用的规则,这就是我想删除它们的原因。
不幸的是,使用NetSecurity
模块的 and 不是一个选项,因为这些仅适用于 Window 8。
我一直在寻找一些东西来向我展示如何做到这一点,但都没有找到。任何帮助将不胜感激。