如何找到一个LAN上的所有主机正在运行的程序的所有实例? [英] How to find all instances of a running program on all hosts on a LAN?

查看:112
本文介绍了如何找到一个LAN上的所有主机正在运行的程序的所有实例?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有关实际目的,什么SqlDataSourceEnumerator做的是找到一个LAN上的各种PC上运行的SQL Server的所有实例。

For practical purposes, what SqlDataSourceEnumerator does is find all instances of SQL server running on the various PCs on a LAN.

有没有寻找一个任意应用程序的运行实例等效?

Is there an equivalent for finding running instances of an arbitrary application?

编辑:好吧,这仅适用,因为这些应用程序有合作的一个预先定义的方法。有没有确定是否给定的文件(exe文件,说的)存在网络上的一些机器上,即使应用程序本身本身不是在运行的时候的一种简单的方法?了解,权限必须加以考虑。

OK, so this only works because these apps have a pre-defined method of cooperation. Is there a straightforward way of determining if a given file (the exe, say) exists on some machine on the LAN even if the app itself itself is not running at the time? Understood that permissions must be taken into account.

推荐答案

什么SQL枚举它广播一个UDP包(端口1434) LAN网段(子网掩码)。在不同的主机上运行的SQL浏览器代理服务侦听该数据包,并与当地实例的列表进行响应。所以对于枚举发生,一些鸭子你已经对齐:

What SQL enumeration does it broadcasts an UDP packet (port 1434) on the entire lan segment (subnet mask). The SQL Browser Agent service running on various hosts listens for this packet and responds with the list of local instances. So for the enumeration to happens, a number of ducks are already aligned for you:


  • 有用于SQL isntance发现一个众所周知的协议, UDP的1434广播和响应

  • 有一个服务监听这个广播,由SQL Server安装程序安装

  • 有一个客户端库来实现广播请求格式和响应解析您杠杆

有关的任意应用的行为是相同的,在所述应用程序必须执行这些缺失部分。发现在一个子网段上任意主机上运行任意进程是所有实用的方法基本上是不可能的。

For an arbitrary application to behave the same, the said application would have to implement these missing parts. Discovering arbitrary processes running on arbitrary hosts in a subnet segment is basically impossible for all practical means.

这篇关于如何找到一个LAN上的所有主机正在运行的程序的所有实例?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆