2010-03-01 61 views
2

我需要检查我的应用程序中是否已经存在TCP/IP路由,如果没有,请添加路由。 现在我运行从.NET应用程序访问TCP/IP路由信息

route add <destination network ip address> MASK <mask> <gateway ip address> 

用的Process.Start(),并且对我很好。 但是,由于我使用“runas”动词提升路由命令,因此需要先检查路由是否已配置,以避免再次运行提升的命令。

有谁知道如何使用.NET Framework获取TCP/IP路由信息吗? (我不想使用Process.Start()运行路径打印并解析输出)

预先感谢您!

回答

1

我认为你必须依靠IPHLPAPI.DLL

Here is a tutorial on how to use it with P/Invoke

+0

感谢您的链接,我认为这是解决方案,但我的问题是,为什么这些信息是无法直接在.NET框架? – 2010-03-01 13:06:09

+0

我认为可以使用System.Management来访问WMI。另外,我猜一个纯粹的.NET解决方案只会是IpHlpApi.dll的封装,所以他们没有打扰 – Eric 2010-03-01 13:08:54

+0

是的,你说得对,但有一个封装比没有更好:P,非常感谢你的回答。 – 2010-03-01 13:13:10

相关问题