有没有标准的C#.NET方式来使用WMI IPHelper?

有没有标准的C#.NET方式来使用WMI IPHelper?,c#,dll,iphelper,C#,Dll,Iphelper,有人知道是否有一个现有的C#.NET命名空间包含与WMI IPHelper函数等效的名称空间吗?具体来说,我需要调用CreateIpForwardEntry和DeleteIpForwardEntry。是通过P/Invoke的唯一方法吗?(注意:这不是对第三方库的请求,而是对标准.NET库的请求)最后,我决定不去尝试调用WMI IPHelper函数。只需启动一个进程,打开cmd.exe并编写控制台命令来添加和删除路由,就容易多了。下面的代码说明了如何做到这一点 var proc = new Pro

有人知道是否有一个现有的C#.NET命名空间包含与WMI IPHelper函数等效的名称空间吗?具体来说,我需要调用CreateIpForwardEntry和DeleteIpForwardEntry。是通过P/Invoke的唯一方法吗?(注意:这不是对第三方库的请求,而是对标准.NET库的请求)

最后,我决定不去尝试调用WMI IPHelper函数。只需启动一个进程,打开cmd.exe并编写控制台命令来添加和删除路由,就容易多了。下面的代码说明了如何做到这一点

var proc = new Process
{
    StartInfo = new ProcessStartInfo
    {
        FileName = "cmd.exe",
        UseShellExecute = false,
        RedirectStandardOutput = true,
        RedirectStandardInput = true,
        CreateNoWindow = true
    }
};

proc.Start();
proc.StandardInput.WriteLine(delete
    ? "route delete " + ServiceIpAddress + " mask " + GatewayMask + " " + GatewayIpAddress + " -p" : "route add " + ServiceIpAddress + " mask " + GatewayMask + " " +  GatewayIpAddress + " -p");
roc.Close();

这不是“推荐或查找工具、库或喜爱的非现场资源”的请求。我认为这很清楚。我想知道如何从.NET调用CreateIpForwardEntry。为什么这么离题?我同意这不是离题。谢谢你的支持。当我第一次发布这个问题时,它被搁置了。在重新编写代码以明确我不是在寻找第三方图书馆服务后,修改后的问题被投票重新打开。一旦成功地重新开放,我认为不应该允许问题再次被搁置。