首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >snmget不能工作,snmpgetnext可以

snmget不能工作,snmpgetnext可以
EN

Stack Overflow用户
提问于 2013-10-10 14:25:28
回答 1查看 470关注 0票数 0

我正在为我们所有的打印机编写一个概述程序(我们是一家拥有大量行业打印机的打印公司)。与打印机通信的唯一方式是通过SNMP。由于我没有得到任何有关SNMP MIB的文档(这是相当糟糕的,因为我们使用自己构建的机器),所以我在过去几天中搜索了任何可用的OID字符串,这些字符串正在处理我期望的结果。到目前为止,其余的都是逆向工程。

我发现了许多有用的JobQueue,我几乎完成了动态链接库,我正在努力(与WinAPI wsnmp32.dll合作),但现在我被困在wsnmp32.dll上了。

现在来看我的问题:)作为您的信息和示例: JobQueue的ID是1202,作业ID是5495。如果我想获得在这个作业中应该打印的页面,我必须调用OID:.1.3.6.1.4.1.2699.1.1.1.3.1.1.7.1202.5495

到目前一切尚好。如果我用snmpget做这件事,我得到的结果是“没有这样的实例”。但有一个明确的例子。我可以肯定地知道,因为我在前面的实例上调用了snmpgetnext (使用OID .1.3.6.1.4.1.2699.1.1.1.3.1.1.7.1202.5494),所以我得到了一个整数值9002,这是正确的,因为这是在这个作业中必须打印的页数。实例正在工作并返回一个值...但前提是我在前面的实例上调用了snmpgetnext。直接在5495上调用snmpget是行不通的。

关于调用snmpget有没有什么我理解不了的地方,所以我做错了?希望任何人能帮助我:)

诚挚的问候

EN

回答 1

Stack Overflow用户

发布于 2013-10-10 15:02:03

如果您确定实例在遍历结果中可见,但无法通过GET操作访问。有一些可能的原因,

  • 此代理有错误。
  • 执行WALK时,作业仍在运行,但执行GET时,作业已完成,且该行已从表中删除。此表是动态的,因此其内容可以随时间而变化。

要确认命中了哪些案例,只需在GET之后执行另一次遍历,看看该行是否存在。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19288527

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档