我想获取域中计算机上的Switched列表。我可以使用directoryentry class
获取域中的计算机列表,但它提供了域中所有计算机的列表,无论它是否已打开。我已经在stackoverflow上提到2,3链接,但没有得到答案。 pinging
需要更多时间。在c#中有没有有效的解决方案?
答案 0 :(得分:0)
您可能希望查看类似SCOM的解决方案。它提供了“心跳”功能,它比ping更可靠(某些企业防火墙可能阻止icmp,例如ping流量)。还有一堆其他的监控内容。它确实意味着更多的管理开销。
如果你想要最简单的解决方案,你无法绕过ping。也许你可以像这里一样使用多线程ping:https://codereview.stackexchange.com/questions/1202/c-multi-thread-ping
答案 1 :(得分:0)
为了解决这个问题,我简单地创建了一个对所有计算机执行ping操作的C#应用程序,这可以根据您的网络快速完成。
基本上你做的是(我做了什么):
1)取你网络人
2)和他谈谈,问他是否有“防洪”
3)如果他没有尖叫,尽可能多地产生线程并使用它们ping机器:)
@Mr Happy已经链接到关于如何进行多线程ping的代码(根本不是它的问题)。