公司共享出打印机的电脑基本都是配置比较好的台式电脑充当。安装XP系统。固定IP地址,配置相应权限并且安装好打印机驱动,这里特别说明,所有电脑均没有开启来宾帐号,任何共享访问都是需要密码的,所以批处理是这样share_print.bat
复制代码 代码如下:
@echo off
net use \\192.168.1.230\IPC$ "密码" /user:"用户名"
rundll32 printui.dll,PrintUIEntry /in /u /z /q /n "\\192.168.1.230\HPLaserJ1319"
rundll32 printui.dll,PrintUIEntry /y /n "\\192.168.1.230\HPLaserJ1319"
注意: PrintUIEntry区分大小写
(如图):
1,先net use命令与需要连接的打印机服务主机建立连接,这里是有用户名和密码的
2,调用rundll32命令以命令行方式调用动态连接库,这行摘自网络搜索出来的结果,如果想知道具体其它参数及用法,在运行命令中打入rundll32 printui.dll,PrintUIEntry /?查看其它相关参数,注意/n后面要紧跟共享打印机的IP地址及打印机名
3,最后一行命令是将此共享打印机设置为默认打印机。
4, 上面的命令保存为批处理执行后,要自己手动点一下确认安装驱动程序,这里查阅了很多资料也没有很好解决。希望哪位解决了一定要发出来学习一下。(如图):
5,点是后,添加打印机就完毕了,命令窗口也自行关闭。可以看到打印机已经连接成功并且设置为默认了。
6,问题来了,重新启动电脑以后会发现无法连接了,原因是系统没有保存住密码。这里就要增加另外一个批出来来解决问题。
7,增加一个批处理,重新通过net use连接一下共享打印机电脑拷贝到开机启动项那里,这样,开机以后就可以直接打印而不会出现问题了。但是如何把它拷贝到开机启动里了?而且用户只要刚开始运行批处理一次,以后就只要一开机,就可以打印了?我们这样:
建立copy.bat,里面内容是拷贝连接打印机并设置为默认的批处理程序到开机启动项目里面,然后调用这个命令让它连接一次,这样用户就可以直接打印了,而且他重新启动电脑以后,也就是等待程序自动执行连接下打印机,点一次确定就可以了,其它的不用做什么。
8,经过测试,由于连接共享的打印机需要网络支持,但是很多电脑启动很慢,并且网络也是很久才能连接好,所以经过改良后的share_print.bat是这样的:
9,文字是提示用户等待,但是后台确是执行的ping,加了15次参数意思是大概等待15秒时间等网络正常后就去连接打印机。
10,将两个批处理发给需要连接打印机的同事,让他们执行一下copy.bat就可以了。