当前位置: 首页 > 面试题库 >

如何通过SNMP查找打印机的计数器

劳鹏云
2023-03-14
问题内容

我目前正在从事一个项目,涉及通过SNMP从打印机获取信息。现在,我一直在测试/研究的打印机是Lexmark X950。

我一直在努力的一个问题是,我也希望该程序也适用于HP或Kyocera或Brother打印机,但是我使用的OID似乎只能在Lexmark上使用。

这是我使用的一些OID:

<OID type="counter">
    <name>Count total printed</name>
    <OIDN>1.3.6.1.4.1.641.2.1.5.1</OIDN>
</OID>
<OID type="counter">
    <name>count total printed since last boot</name>
    <OIDN>1.3.6.1.2.1.43.10.2.1.5</OIDN>
</OID>
<OID type="counter">
    <name>count total printer black</name>
    <OIDN>1.3.6.1.4.1.641.2.1.5.2</OIDN>
</OID>
<OID type="counter">
    <name>count total printed color</name>
    <OIDN>1.3.6.1.4.1.641.2.1.5.3</OIDN>
</OID>
<OID type="counter">
    <name>count total copied black</name>
    <OIDN>1.3.6.1.4.1.641.2.1.5.7</OIDN>
</OID>

如您在这里看到的,我主要将1.3.6.1.4.1.641用作我的OID,但它们仅适用于Lexmark。是否有更通用的OID可以用来查找以黑色/彩色打印,以黑色/彩色复印,以黑色/彩色传真并以不同方式(单面,双面,平板)扫描的页面数,基本上可以用于任何打印机?

问候。


问题答案:

最简洁的答案是不’。详细信息将取决于供应商。

您可以对多个不同的打印机进行snmpwalk,然后比较数据以查看是否有要报告的常用属性。

每台打印机都应具有特定于打印机的MIB,该MIB将列出您可以在该打印机上查询的所有详细信息-
因此,从特定的MIB值开始,如果您扫描了MIB并搜索了有趣的值,则可以找到要轮询的正确OID。每个平台。

在开始时,您可以轮询sysDescr mib条目,并确定设备是否为Brother / Epson / Canon / hp打印机等。



 类似资料:
  • 问题内容: 我正在为具有内置行式打印机的Android设备开发应用程序。我必须与此打印机进行交互,并使用它来打印收据上的详细信息,然后使用裁纸器自动剪切该收据。我已经在其中看到了一些ESC命令,但是我不知道如何执行这些ESC命令。 关于Casio设备打印机,我有三个主要问题: 1.我已经使用了内置打印机的打印代码,但是打印后切纸刀没有激活 2.我不知道如何在android中将ESC命令发送到打印机

  • 我正在尝试编写一个程序,打印一个2d数组,其中包含100-10000范围内的随机数,并打印出数组中的最大值、平均值和最小值。该程序将询问用户行数和列数,并在该数组中打印随机数。 这是我的代码:

  • 因此,我得到了如下列表,其中包含lambda表达式: 但是我不能实例化和修改lambda表达式中的变量,因为它必须是。我有办法做到这一点吗?

  • 问题内容: 我想用Java制作图像,然后在尺寸为150 x 100毫米的标签上的300dpi标签打印机上打印。如何制作图像,以便将线条(或任何种类的元素)准确地打印在位置(10,10)(以毫米为单位),并在位置(10,50)处结束? 换句话说:我的挑战不是如何制作一条线(我使用的是Graphics2D,bufferedImage),而是如何准确地知道该行在标签上的位置(以毫米为单位)。 有任何想法

  • 问题内容: 我想使用PDFBox打印 由iText创建的 PDF文件 。我已经使用PDDocument类及其方法print()成功尝试了此操作。您可以在此处找到文档: http //pdfbox.apache.org/apidocs/。 (我正在使用此代码:) 方法print()很好用,但是 有一个问题:当我需要打印多个文件时,该方法要求我为每个文档选择打印机。 有什么办法只能设置一次打印机吗?