Используя следующий код работает на всех ОС я тестируется на моем Windows Server 2012, кроме машины:Проблемы с INetFwMgr на Windows Server 2012
public static Type FwMgrType = Type.GetTypeFromProgID("HNetCfg.FwMgr");
public static void Main()
{
var fwMgr = (INetFwMgr) Activator.CreateInstance(FwMgrType);
var ssh = fwMgr.LocalPolicy.CurrentProfile.GloballyOpenPorts.Item(22,
NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_TCP); // throws FileNotFoundException
ssh.RemoteAddresses = "123.234.123.235";
}
Линия, которая создает переменную ssh
бросает:
Система не может найти указанный файл. (Исключение из HRESULT: 0x80070002)
Я не понимаю, какой файл он не может найти. FirewallAPI.dll существует на компьютере. Я даже построил сборку interop на сервере с помощью tlbimp.exe.
Может кто-нибудь помочь?