C# 如何在检查了私有和公共配置文件的情况下将授权应用添加到Windows防火墙?

C# 如何在检查了私有和公共配置文件的情况下将授权应用添加到Windows防火墙?,c#,vb.net,firewall,windows-firewall,C#,Vb.net,Firewall,Windows Firewall,我需要将SQL Server添加到防火墙,同时选中Private和Public。我一直在试图搞乱防火墙配置文件,但似乎没有一个选项可以同时设置这两个配置文件 Dim ruleSQL As INetFwAuthorizedApplication = CreateObject("HNetCfg.FwAuthorizedApplication") ruleSQL.Name = "12 SQL Test" ruleSQL.IpVersion = NET_FW_IP_VERSION_.NE

我需要将SQL Server添加到防火墙,同时选中PrivatePublic。我一直在试图搞乱防火墙配置文件,但似乎没有一个选项可以同时设置这两个配置文件

Dim ruleSQL As INetFwAuthorizedApplication = CreateObject("HNetCfg.FwAuthorizedApplication")
    ruleSQL.Name = "12 SQL Test"
    ruleSQL.IpVersion = NET_FW_IP_VERSION_.NET_FW_IP_VERSION_ANY
    ruleSQL.ProcessImageFileName = "C:\Program Files\Microsoft SQL Server\MSSQL15.EDGESQL2019\MSSQL\Binn\sqlservr.exe"
    ruleSQL.Scope = 0
    ruleSQL.Enabled = True




    Dim firewall As INetFwMgr = CreateObject("HNetCfg.FwMgr")

    Dim tfwpolicy As INetFwPolicy = firewall.LocalPolicy


    Dim ppolicy As INetFwProfile = tfwpolicy.GetProfileByType(NET_FW_PROFILE_TYPE_.NET_FW_PROFILE_STANDARD)

    ppolicy.AuthorizedApplications.Add(ruleSQL)

你退房了吗?我认为它支持使用位掩码选择配置文件。还可以查看C#中的这个示例,它为所有概要文件添加了一条规则:您是否签出了INetFwPolicy2?我认为它支持使用位掩码选择配置文件。还可以在C#中查看此示例,它为所有配置文件添加了一条规则: