C-开发一个软件劫持打印机数据

C-开发一个软件劫持打印机数据

想挽留 发布于 2017-09-23 字数 419 浏览 1479 回复 1

这几天突发奇想,想做一个功能,这个功能就是计算机1链接到打印机上,那么当发送打印指令的时候我们打印机收到的是什么命令?我现在的想法是,把打印机的连接线链接到另一台电脑(计算机2),让计算机1直接链接计算机2,当计算机1发送打印指令的时候计算机2收到他的打印命令,并且记录下来。当然计算机2传递给计算机1的信息得让计算机1认为计算机2是个打印机。我这个想法用C#是不是可以做到?或者别的什么?请做过的大神或者有思路的大神指导。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

归属感 2017-10-24 1 楼

我虽然只学过一点C#但是也是知道你这个是不行的……你大概没有学过计算机网络吧……
计算机1向2传输的一定只是打印的文本或者图片的信息,绝对不会涉及底层的打印机的具体的命令信息。
==================我是解决方案的分割线===================================
首先提供一个简陋的解决方案:
对于早期的打印机,主要是针式打印机,我看到的资料表明早期的部分产品其命令信息就是文本信息——这一类打印机不能打印图片,不能调整字体……甚至打印的纸张都是那种两边有圆孔的纸张……多见于上个世纪90年代的银行部门——做账用。
然后是一个相对高端但是对你可能不适用的方案:
使用linux,查看/dev/下的文件……比如,你决定要打印某个文本,而打印机通过usb1号口连接电脑,这时候你就可以通过命令:

cat /dev/hda

注意,hda我不确定……请自行查找资料……
这个时候可以看到一些信息这些信息就是打印机的各种命令啊……
当然,这个方法可能只对于早期针式打印机有用……
===============我是原理的分割线========================
这里有个博客你可以看看……http://www.cnblogs.com/sirsunny/archive/2004/12/15/77503.html