Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The following example demonstrates enabling a service, disabling one of its ports, and changing the scope of another.
Option Explicit
'Set Constants
Const NET_FW_SERVICE_FILE_AND_PRINT = 0
Const NET_FW_SERVICE_UPNP = 1
Const NET_FW_SERVICE_REMOTE_DESKTOP = 2
' Scope
Const NET_FW_SCOPE_ALL = 0
Const NET_FW_SCOPE_LOCAL_SUBNET = 1
'Declare variables
Dim service
Dim port
' Create the firewall manager object.
Dim fwMgr
Set fwMgr = CreateObject("HNetCfg.FwMgr")
' Get the current profile for the local firewall policy.
Dim profile
Set profile = fwMgr.LocalPolicy.CurrentProfile
Set service = profile.Services.Item(NET_FW_SERVICE_FILE_AND_PRINT)
service.Enabled = TRUE
' Use either Scope or RemoteAddresses, but not both
service.RemoteAddresses = "*"
'service.Scope = NET_FW_SCOPE_ALL
' The Service is Enabled and Scoped to All IP's. Now disable
' TCP 445 and scope TCP 139 to Local Subnet only.
For Each port In service.GloballyOpenPorts
if port.Port = 445 Then port.Enabled = FALSE
if port.Port = 139 Then port.Scope = NET_FW_SCOPE_LOCAL_SUBNET
Next