2011-01-14 84 views
0

我有一个SysTray应用程序,需要知道什么时候浏览器遇到Internet TImeout/Connection Not Found/etc ...错误。在端口级别,这可能是任何东西从网络是不可用的网络没有找到,等等....NET中的TCP事件监视器

我不需要看到每个TCP数据包流过网络,但我确实需要知道TCP /端口/ WinSock(无论哪个工作)事件流经所有端口。

理想情况下,我会避免WinPCAP,因为这是一个可分发的软件产品,人们往往不喜欢他们的计算机上的WinPCAP。

我正在使用.NET 4.0 Full - 有人能请我指出正确的方向吗?

+0

如果浏览器以外的程序看到同样的问题会怎么样?你想知道吗? – 2011-01-14 01:04:14

回答

0

如果您对看到实际的TCP数据包不感兴趣,但只对开放连接感兴趣,为什么不使用NETSTAT -a

它将为您提供客户端计算机上当前连接的协议,本地,外部和状态信息。

使用Process类来产卵NETSTAT -a。使用Process.StandardOutput将输出重定向到您的应用程序,然后用regexstring.split筛选出必要的字符串。

0

感谢您的答复 - 这使我IPGlobalPrperties - http://www.eggheadcafe.com/sample-code/csharp.NET/c51bd463-c6c3-48fb-a972-5b440215992a/provides-information-about-the-transmission-control-protocol-tcp-connections-on-the-local-computer.aspx

使用该代码的衍生物,我是能够建立一个监视器TCP事件。

+0

该链接已死亡。你能否更新和/或至少分享一些你的代码?我需要监视来自我公司的传统PBX(通过已知的IP地址和端口#)到其旧版客户端软件(Oaisys NetPhone v4.6)的TCP流量,这两种流量都不再受支持(除非我们升级了我们不会随时)提取来电显示电话#以解决客户端sfw不再记录在Windows 10(与7或XP)下的来电显示号码。 – Tom 2017-07-07 02:52:53