Java-列出局域网上的所有网络打印机

Java-列出局域网上的所有网络打印机,java,networking,printers,network-printers,jcifs,Java,Networking,Printers,Network Printers,Jcifs,我需要使用Java来获取局域网上属于网络打印机的所有IP地址的列表。我不需要打印到打印机上,我只需要找到所有的打印机。这是针对android应用程序的 我只是想说清楚,我并没有试图找到在本地机器上配置的网络打印机。我正在尝试查找网络上所有可用的打印机 我已经尝试过了,但是我在让根SMB文件使用该代码时遇到了问题,因为我的代码将在多个域和网络上运行,因此我无法硬编码,并且我无法找出如何使用jcifs查找当前域。查找“所有”打印机是一项相当艰巨的任务 但是,我建议使用SNMP遍历已知端口 可以在以下

我需要使用Java来获取局域网上属于网络打印机的所有IP地址的列表。我不需要打印到打印机上,我只需要找到所有的打印机。这是针对android应用程序的

我只是想说清楚,我并没有试图找到在本地机器上配置的网络打印机。我正在尝试查找网络上所有可用的打印机

我已经尝试过了,但是我在让根SMB文件使用该代码时遇到了问题,因为我的代码将在多个域和网络上运行,因此我无法硬编码,并且我无法找出如何使用jcifs查找当前域。

查找“所有”打印机是一项相当艰巨的任务

但是,我建议使用SNMP遍历已知端口

可以在以下位置找到良好的SNMP实现:

这个网站对你要找的东西有很好的解释


而“查找网络打印机”的意思是“在域控制器中查找它们”?现在没有没有http服务器的网络打印机。获取“索引”并与“网络打印机http索引数据库”进行比较。大多数打印机还具有SNMP功能。我专门寻找较旧的打印机,主要是HP Jetdirects。是的,我想找到网络打印机的一种方法是在域控制器中查找它们,但是如果你知道我上面描述的另一种方法,那也很好。