我编写了一个小型C#应用程序来执行防火墙任务,例如块IP,启用/禁用防火墙等。它在Windows 7 x64上完美工作,但是一旦我在Windows Server 2008 x64上尝试它,它就会崩溃。这就是我的代码崩溃的位置...

public partial class frmMain : Form
{
  private INetFwMgr FWManager;

  public frmMain()
  {
    InitializeComponent();

    Type NetFwMgrType = Type.GetTypeFromProgID("HNetCfg.FwMgr", false);
    FWManager = (INetFwMgr)Activator.CreateInstance(NetFwMgrType);

    if (getFirewallStatus() == true)
        UpdateFirewallStatus(true);
    else
        UpdateFirewallStatus(false);

    ListOpenPorts();
  }
}

错误是这些行...

Problem Event Name: CLR20r3
Problem Signature 01: brutalnt.exe
Problem Signature 02: 1.0.0.0
Problem Signature 03: 4ed589c8
Problem Signature 04: mscorlib

当我删除线以获取防火墙经理时,它开始了。那么,我需要在Server 2008中以不同的方式获得它吗?

有帮助吗?

解决方案

评论在评论中得到了回答,但是问题是机器的Active Directory安装和破损的防火墙。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top