无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 30226|回复: 314
打印 上一主题 下一主题

[求助] 刚刚在论坛看到一个共享打印机的好东西raw print server

  [复制链接]
跳转到指定楼层
1#
发表于 2022-9-3 23:03:35 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 chinaren12 于 2022-9-7 09:11 编辑

但是我在win10下运行出错,无法启动服务。
不知道哪位大侠能把源代码修整一下,让这个工具在win7,win10下都能运行呢?


我把整个软件包传上来了。这个小工具可以绕过微软的打印共享系统。这是微软系统中的噩梦。。

RawPrintServer100beta1.zip (27.58 KB, 下载次数: 342)
根据felixatvan说1.0是最新版。我把1.0的源码和成品也发上来,大家看看有没有人能正常使用。


RawPrintServer100.zip (27.45 KB, 下载次数: 240)




评分

参与人数 1无忧币 +5 收起 理由
wuxin9712 + 5

查看全部评分

2#
 楼主| 发表于 2022-9-4 20:09:07 | 显示全部楼层
语之男 发表于 2022-9-4 06:01
局域网共享精灵试试.多好用

我碰到过很多情况局域网共享精灵都无法解决的。
回复

使用道具 举报

3#
 楼主| 发表于 2022-9-4 20:10:46 | 显示全部楼层
zhuwg 发表于 2022-9-4 18:17
找到一个类似的东西,在家没测试环境,也不知道和lz提供的是不是差不多的东西
https://github.com/frogmor ...

这个是单机使用的,不能网络,我也搜到了这个工具,这个rawprint主要是供单机的。没有网络打印功能。

点评

我试着修改了一下,不知道能不能用, 你试试  详情 回复 发表于 2022-9-4 21:52
回复

使用道具 举报

4#
 楼主| 发表于 2022-9-4 20:12:58 | 显示全部楼层
Climbing 发表于 2022-9-4 19:03
编译版的在这里:http://www.columbia.edu/~em36/windowsrawprint.html

不过似乎跟楼主这个工具两回事 ...

是的,楼上兄弟找到的这个是单机版的。没有网络功能
回复

使用道具 举报

5#
 楼主| 发表于 2022-9-4 22:37:05 | 显示全部楼层
zhuwg 发表于 2022-9-4 21:52
我试着修改了一下,不知道能不能用,
你试试

好像在win10上能正常启动了。但我用的是虚拟打印机测试的。明天我再搞台真正的打印机测试下。

回复

使用道具 举报

6#
 楼主| 发表于 2022-9-5 08:36:10 | 显示全部楼层
Eso1991 发表于 2022-9-5 00:17
都2022年了,不会还有人会买不带网络的打印机吧?

你能保证你碰到的每台打印机都带网络吗?
回复

使用道具 举报

7#
 楼主| 发表于 2022-9-5 14:17:33 | 显示全部楼层
felixatvan 发表于 2022-9-5 12:09
正解。用原版按照7樓的操作做。

我刚刚用实机测试了一下,似乎不行,不知道是哪个搞错了。
我弄了一台笔记本,然后装了个hp p1007的打印机,然后安装rawprintserver,也安装成功了。

然后我在别的电脑上添加一个端口为“192.168.8.108”,协议为raw的端口,安装的也是P1007的驱动。

但是无法打印。提示打印错误。

点评

我修改的源代码见附件, 就是改了一行加入了获取文件路径,原作者写的相对路径, 然后具体不能用,请查看"C:\\PrintServer.log" 看看错误信息是什么  详情 回复 发表于 2022-9-5 20:30
回复

使用道具 举报

8#
 楼主| 发表于 2022-9-5 17:36:36 来自手机 | 显示全部楼层
357734620 发表于 2022-9-5 11:15
测试不成功啊。
1.客户机能正常发送【打印测试页】到服务器上,服务器打印列表里显示文档名为:Forwarded  ...

请问朋友你是如何安装的?我的能通过网络安装成功,但无法打印,直接连打印机的电脑也没有显示有任何文档过来。
回复

使用道具 举报

9#
 楼主| 发表于 2022-9-5 20:59:16 | 显示全部楼层
zhuwg 发表于 2022-9-5 20:30
我修改的源代码见附件,
就是改了一行加入了获取文件路径,原作者写的相对路径,
然后具体不能用,请查 ...

感谢兄弟的付出,我稍后试试再反馈给你

点评

上述代码来自https://docs.microsoft.com/zh-cn/windows/win32/printdocs/sending-data-directly-to-an-xps-printer 大概意思是vista之后使用了新的XPS驱动来操作打印机, 之前的GDI驱动已经支持有限了还是怎么的  详情 回复 发表于 2022-9-5 21:04
回复

使用道具 举报

10#
 楼主| 发表于 2022-9-6 09:11:52 | 显示全部楼层
本帖最后由 chinaren12 于 2022-9-6 09:14 编辑
zhuwg 发表于 2022-9-5 20:59
https://docs.microsoft.com/zh-cn ... mode-pcl-postscript这儿说
V4 驱动程序是基于 XPS 的驱动程序。 ...

使用xps版也不行。

下面是错误提示

PrintServer created by Henk Jonas (www.metaviewsoft.de)
PrintServer start
P1007 on 9100 (9100)
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.
Accept print job for P1007 from 192.168.8.85
Error opening print job.


一直是这个提示,好像进入了死循环一样。但是查看服务中的rawprvintserver不像原版一样会自动停止,一直处于已启动的状态。

但好像转发打印任务到本地打印不成功。

点评

增加如下代码,把错误信息输出到log,看看错误到底是什么,  详情 回复 发表于 2022-9-6 11:46
兄弟和我一样认真测试啊,我们遇到的问题也是一样的。感谢那位修改源码的兄弟。  详情 回复 发表于 2022-9-6 10:50
今天测试了,还是不能打印。客户端发打印任务后,服务不会停止,但打印机无任何动作,错误日志:PrintServer created by Henk Jonas (www.metaviewsoft.de) PrintServer start Lenovo M7250N Printer on 9100 (910  详情 回复 发表于 2022-9-6 10:17
回复

使用道具 举报

11#
 楼主| 发表于 2022-9-6 14:37:09 | 显示全部楼层
zhuwg 发表于 2022-9-6 11:46
增加如下代码,把错误信息输出到log,看看错误到底是什么,




还是不行,能生成文档,但连接打印机的电脑没有任何反应。

这是刚刚测试的结果

点评

兄弟和我测试结果一样啊。  详情 回复 发表于 2022-9-6 15:13
回复

使用道具 举报

12#
 楼主| 发表于 2022-9-6 20:51:43 | 显示全部楼层
zhuwg 发表于 2022-9-6 20:29
又修改了一下
增加如下
看看错误在哪里

感谢兄弟的坚持。

明日再测试反馈结果给你,谢谢了。

点评

又更新了一下,增加输出getlasterror功能 但我拿adobe pdf打印机测试 能发送打印任务,没错误返回, 但pdf打印机没反应, 日志如下, PrintServer start Accept print job for Adobe PDF from 10.232.28.12  详情 回复 发表于 2022-9-6 22:28
回复

使用道具 举报

13#
 楼主| 发表于 2022-9-6 23:26:07 来自手机 | 显示全部楼层
zhuwg 发表于 2022-9-6 22:28
又更新了一下,增加输出getlasterror功能
但我拿adobe pdf打印机测试
能发送打印任务,没错误返回,

反馈正常的估计都是打印机接在xp系统上。我看那个项目下面留言最早的是2007,2016年有人留言说他的win7打印正常。。。。

点评

刚用Lexmark E250dn在两台Win11机上测试了,使用的是Lexmark Universal Driver. 两便Windows 测试打印都是成功没问题。第一台机上安装成功后改名为E250dn,同时共享。目的是为了减少长名造成的一些麻烦。然后安装Raw  详情 回复 发表于 2022-9-7 05:48
我这里所接的操作系统有都是Win10,打印没问题。不同的是我这里需要的都是TEXT Mode直接打印,不是用Graphic Mode.(大部分的windows 打印是用这个形式,它需要厂家的驱动)。有些厂家的打印机是必须连在它自己的特  详情 回复 发表于 2022-9-7 04:29
回复

使用道具 举报

14#
 楼主| 发表于 2022-9-7 08:49:31 | 显示全部楼层
felixatvan 发表于 2022-9-7 05:59
请查一下,你下载的是否最新的?我提供的下载链接里1.0是最新的。不是1.0beta.
下载链接:
https://source ...

我下载的就是1.0beta,我以为1.0beta是1.0的改进版呢?
回复

使用道具 举报

15#
 楼主| 发表于 2022-9-7 09:09:22 | 显示全部楼层
felixatvan 发表于 2022-9-7 05:59
请查一下,你下载的是否最新的?我提供的下载链接里1.0是最新的。不是1.0beta.
下载链接:
https://source ...






这个1.0的正式版也不行,不知道是不是不兼容HP的打印机呢?还是如你所说的那样需要通用打印驱动程序。

数据是接收到了,但打印机没有动作。

点评

找到一篇文章, 通过添加端口设置 generic厂家的text only驱动来打开raw模式支持, 你试试  详情 回复 发表于 2022-9-7 09:48
回复

使用道具 举报

16#
 楼主| 发表于 2022-9-7 09:32:47 | 显示全部楼层
felixatvan 发表于 2022-9-7 05:59
请查一下,你下载的是否最新的?我提供的下载链接里1.0是最新的。不是1.0beta.
下载链接:
https://source ...

RawPrintServer100.zip (27.45 KB, 下载次数: 42)

据上面朋友说1.0是正式版。兄台可以改用这版源码试试

点评

这个正式版的测试成功,正常打印  详情 回复 发表于 2022-9-7 09:49
回复

使用道具 举报

17#
 楼主| 发表于 2022-9-7 11:18:29 来自手机 | 显示全部楼层
yxc51 发表于 2022-9-7 09:49
这个正式版的测试成功,正常打印

我去,为什么我不能成功呢?你什么打印机型号

点评

問一下,如果在DOS prompt鍵入DIR >\\127.0.0.1\p1007 結果是什麼?  发表于 2022-9-7 13:37
我测试HP LaserJet P1007也没反应,不知道哪里有问题  详情 回复 发表于 2022-9-7 12:07
我测试的是联想M7250N的打印机,服务端安装的网络打印机,USB没测试,感觉应该也没问题。  详情 回复 发表于 2022-9-7 11:36
回复

使用道具 举报

18#
 楼主| 发表于 2022-9-7 14:03:20 | 显示全部楼层
zhuwg 发表于 2022-9-7 12:07
我测试HP LaserJet P1007也没反应,不知道哪里有问题

老哥,我晚点测试后给你回信。。。

点评

使用Port Monitor工具,监听9100端口发过来的内容, 对于P1007打印机, 如果是如下这种XQX开头的PS格式,有可能可以打印, 某些比较新的打印机甚至可以直接接受PDF格式  详情 回复 发表于 2022-9-8 11:54
回复

使用道具 举报

19#
 楼主| 发表于 2022-9-7 22:23:55 | 显示全部楼层
邪恶海盗 发表于 2022-9-7 16:56
搜索一下大把,假货宝买现成的也可以

这软件方案如果能完善的话,也不失为一种很好的替代方法呀。。。

点评

我搜索一下是有人反映能用也有人说不能用, 可能真和打印机型号或者驱动有关系, 利用路由器usb口接打印机的方法我也知道, 但好些公司不允许个人接路由器到公司内网  详情 回复 发表于 2022-9-7 22:39
回复

使用道具 举报

20#
 楼主| 发表于 2022-9-7 22:55:39 | 显示全部楼层
zhuwg 发表于 2022-9-7 22:39
我搜索一下是有人反映能用也有人说不能用,
可能真和打印机型号或者驱动有关系,
利用路由器usb口接打 ...

是的,打印服务器我有很多种,但总有碰到不想花钱的人的。这时候就可以派上用场了。

点评

我从MS网站上找了一段代码, 随便打开一个文件,选择hp1007打印机,打印到文件,之后保存为test1, 再用这个程序输出到打印机,一切正常, 我怀疑是不是网络传输问题 测试程序和源码我都放附件了你看看, 命令  详情 回复 发表于 2022-9-8 10:29
回复

使用道具 举报

21#
 楼主| 发表于 2022-9-8 12:27:27 来自手机 | 显示全部楼层
Climbing 发表于 2022-9-8 11:53
今天找时间试了一下原始的1.0版本,使用命令行安装时,需要注意,对应的服务项中的ImagePath只指定了"RawPr ...

班主,你的是什么打印机

点评

Brother Fax-2890,一台传真机,当打印机使用。  详情 回复 发表于 2022-9-8 13:29
回复

使用道具 举报

22#
 楼主| 发表于 2022-9-8 13:37:35 | 显示全部楼层
zhuwg 发表于 2022-9-8 10:29
我从MS网站上找了一段代码,
随便打开一个文件,选择hp1007打印机,打印到文件,之后保存为test1,
再 ...

i

这个工具可以把转换成文件了的内容通过打印机打出来。
回复

使用道具 举报

23#
 楼主| 发表于 2022-9-8 13:38:39 | 显示全部楼层
felixatvan 发表于 2022-9-7 05:48
刚用Lexmark E250dn在两台Win11机上测试了,使用的是Lexmark Universal Driver.  两边Windows 测试打印都 ...



用你给的命令测试无法成功。

点评

如果你是在第一臺機上執行這條指令的話,請確認P1007是共享了。如果成功的話再作後面的測試,  发表于 2022-9-8 14:44
回复

使用道具 举报

24#
 楼主| 发表于 2022-9-8 14:09:59 | 显示全部楼层
zhuwg 发表于 2022-9-8 11:54
仔细测试发现WritePrint代码其实没问题,是发过去的数据打印机不认识,某些比较老的打印机支持的格式很少
...




老哥,我用另外一台打印机测试了。柯尼卡美能达bizhub 15能正常打印。

但是hp p1007还是不能正常打印。当你通过网络打印到p1007时,p1007的打印机能唤醒。但仅仅限于唤醒。唤醒之后就没有任何动作了。

所以,可能这个远程打印软件就不兼容HP的打印机,或者不兼容hp的老型号打印机。

点评

不知道你記不記得在DOS向Windows轉的時候有DOS打印機和windows打印機的說法,windows打印機在DOS的環境下無法打印,  发表于 2022-9-8 15:01
回复

使用道具 举报

25#
 楼主| 发表于 2022-9-8 14:20:39 | 显示全部楼层
zhuwg 发表于 2022-9-8 11:54
仔细测试发现WritePrint代码其实没问题,是发过去的数据打印机不认识,某些比较老的打印机支持的格式很少
...

所以,能否添加支持HP打印机的代码?老哥。。。。

点评

翻了不少资料大概理解了打印机工作过程, 资料说WritePrint会不经过驱动程序直接发送文件给打印机 打个比方吧,有甲乙丙三个人,甲是翻译,乙是快递员,丙是打字员, 我们把PDF文件交给甲, 甲会翻译成GDI格式让  详情 回复 发表于 2022-9-8 17:52
测试发现问题出在发送的机器这边, 首先在本机选择p1007打印到文件,保存为test1, 然后执行 nc 192.168.1.2 9100  详情 回复 发表于 2022-9-8 17:15
参考https://t2.re/archives/708/ https://www.right.com.cn/forum/forum.php?mod=viewthread&tid=212810&page=1 以及https://oldwiki.archive.openwrt.org/doc/howto/p910nd.server https://plugout.net/viewtop  详情 回复 发表于 2022-9-8 15:14
回复

使用道具 举报

26#
 楼主| 发表于 2022-9-8 18:29:02 | 显示全部楼层
zhuwg 发表于 2022-9-8 17:52
翻了不少资料大概理解了打印机工作过程,
资料说WritePrint会不经过驱动程序直接发送文件给打印机
打个 ...

简单点讲就是hp的某些型号的老打印机无法被直接驱动。
回复

使用道具 举报

27#
 楼主| 发表于 2022-9-8 18:33:46 | 显示全部楼层
felixatvan 发表于 2022-9-7 05:48
刚用Lexmark E250dn在两台Win11机上测试了,使用的是Lexmark Universal Driver.  两边Windows 测试打印都 ...



共享P1007之后运行你所给的命令也无法打印,只能短暂的唤醒打印机,但打印机能生成打印任务。。。只是不打印。

点评

这个测试只涉及了一台机,我想应该和打印接口有关系。类似的情况会发生在共享一台mapped安装的打印机(XP没有此情况)。  发表于 2022-9-9 02:37
回复

使用道具 举报

28#
 楼主| 发表于 2022-9-8 18:48:05 | 显示全部楼层
zhuwg 发表于 2022-9-8 17:52
翻了不少资料大概理解了打印机工作过程,
资料说WritePrint会不经过驱动程序直接发送文件给打印机
打个 ...

为什么在hp的打印机上rawprintserver接收数据如此之慢呢?

我把p1007的打印处理器改成如下图所示,但服务器端接收数据慢得无法形容,1.34m的打印测试页花了5分钟都没接收完成。


1.PNG (14.48 KB, 下载次数: 46)

1.PNG

点评

是不是因为转成了RAW的缘故。  详情 回复 发表于 2022-9-8 19:36
回复

使用道具 举报

29#
 楼主| 发表于 2022-9-8 18:49:45 | 显示全部楼层
这是服务器端接收数据的速度。简直就是比蜗牛还慢。。


回复

使用道具 举报

30#
 楼主| 发表于 2022-9-8 19:55:38 | 显示全部楼层
Climbing 发表于 2022-9-8 19:36
是不是因为转成了RAW的缘故。

极有可能,hp的m1005,p1007,p1008,p1108等打印机的打印处理器都不是winprint的raw。。。

这可能就是导致rawprintserver不支持的原因。

点评

继续修改,参考路由器实现方法, 先发一段数据给打印机,再开始打印 数据已经被我写的程序里面如下 unsigned char data[222443] 这个应该只能用于p1007,请试试  详情 回复 发表于 2022-9-9 10:42
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-6-14 04:56

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表