Jak wykryć (z aplikacji Windows Forms napisanej w języku C#), czy produkt zapory jest włączony?Jak wykryć, czy produkt zapory jest włączony?
Oto mój kod i otrzymuję błąd na INetFwMgr tego typu lub obszaru nazw nie mógł znaleźć
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private const string CLSID_FIREWALL_MANAGER = "{304CE942-6E39-40D8-943A-B913C40C9CD4}";
INetFwMgr manager = GetFireWallManager();
bool isFirewallEnabled = manager.LocalPolicy.CurrentProfile.FirewallEnabled;
private static INetFwMgr GetFireWallManager()
{
Type objectType = Type.GetTypeFromCLSID(new Guid(CLSID_FIREWALL_MANAGER));
return Activator.CreateInstance(objectType) as INetFwMgr;
}
private void button1_Click(object sender, EventArgs e)
{
if (isFirewallEnabled == false)
{
MessageBox.Show("Firewall is not enabled.");
}
else
{
MessageBox.Show("Firewall is enabled.");
}
}
}
}
Brakuje dyrektywy użycia? – CRoshanLG
Tak. Jak to rozwiązać? –
Dodaj przestrzeń nazw Microsoft.TeamFoundation.Common do kodu. Zobacz dodatek w mojej odpowiedzi. – CRoshanLG