有没有办法通过程序获取打印机的序列号?

291 天前
 YYSWDD
最近单位想做一个资产统计的软件。在每台电脑上运行一下,就可以获取电脑、打印机的品牌型号、内存、mac 地址等信息。

目前通过 win32 api 和 wmic ,可以获取大部分信息,但是有的电脑只能获取品牌,主板信息里没有具体型号,只有产品编码。

最主要的是,没有办法获取到打印机的序列号。因为打印机都是共用的,就没办法统计具体有多少台打印机。

台式机 A 获取到了打印机信息,台式机 B 也获取到了,就有很多重复的。

不过应该是有方式可以获取的,因为我在注册表里搜到了有些打印机的序列号。有些打印机注册表里就没有。
有的打印机在设备属性里,就直接可以看到序列号。不知道有没有办法能稳定有效。

获取打印机序列号之后,还要登记每个打印机的运维记录。要记录多久换了一次粉。
1263 次点击
所在节点    问与答
8 条回复
olaloong
291 天前
打印机联网吗?联网可以直接访问打印机的 ip ,通常页面上就有序列号
sss15
291 天前

获取了一堆打印机,其实只有最后一个打印机是真打印机,其他要么是之前链接过,现在已经不在了,要么就是 wps office 的虚拟打印机
YYSWDD
291 天前
@olaloong 有的是联网的,有的是 ipv6 的。
ponng
291 天前
看看打印机是不是都开启了 ipp 协议打印,开了的话内网扫描一圈,多少个打印机应该就清楚了,然后用 ipp 依次发送获取序列号的请求。

可以尝试下这个思路可不可行
YYSWDD
291 天前
@sss15 是的,这个过滤一下还好。只是没有办法获取到序列号。之前我以为“硬件 id”是唯一的。但是后来发现同一批次的打印机“硬件 id”是一样的。
sleepm
291 天前
看机型吧
https://support.hp.com/cn-zh/document/c02846934
有的在机身哪个位置
有点打印状态页,有的网页信息里
吐槽下有些显卡序列号,只在显卡上有个贴纸
装完了,注册账号想认领设备输序列号,获取积分
只能再拆下来找
yinmin
291 天前
网络打印机基本都是支持 ipp 协议,你在 linux 里安装 cups 后(apt install cups),可以使用下面的指令获取打印机属性,输出内容中有 1 个 printer-uuid 属性,应该就是打印机的序列号

ipptool -tv ipp:// [打印机 IP 地址] /ipp/print get-printer-attributes.test

Windows 下可以试试 WSL2 安装 cups ,应该也支持
YYSWDD
290 天前
@yinmin 之前试过扫描的工具,但是跨网段扫描的效果不好。要是可以直接和打印机驱动交互,然后读取到信息是最好。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1091231

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX