我想实现如下的功能,任何客户端的软件打印到网络打印服务器都转发到一台计算机上用一个软件来确认。如果人为确认通过就可以打印否者不允许打印
解决方案 »
- ADODB中一个很奇怪的问题?
- 拖动操作时,如何从鼠标位置获得目标文件夹窗口的路径?
- 求助!Delphi的流
- 使用webbrowser怎么来屏蔽掉主页面外的弹出窗口啊
- 急!急!急!求教一个SocketConnection的问题.
- 将编译的exe代码段设置为可写的编译开关是什么?
- 请问如何用ord(),为什么我写的出来的代码有错了,请帮助.
- 如何禁止刷新窗口/或窗口控件呢?
- 在16进制文件中定位的问题,急,求救!!!!!!!!!!!!!
- 应用程序服务器怎样根据IP限制客户端的连接???急!!!!!!!!!
- 如何在Win2000下调用Win2000样式的打开对话框?
- 请问 DELPHI是怎样调用MS SQL写的函数的,我一般是用ADOQUERY调用它的存储过程的
1 使用API函数OpenPrinter,Enumjobs获取打印机的当前作业列表,当然用完后记得ClosePrinter。
2 把返回的JOB_INFO_1或者JOB_INFO_2结构发送到目标计算机,这个用midas就可以实现了。
3 检查JOB_INFO_1或者JOB_INFO_2中的pUserName成员,手动确认是否有权打印,返回结果给打印服务器。
4 如果有权打印,不用做任何操作,等待打印机打印即可。否则,使用SetJob取消该打印作业。
5 至于打印的过程,自己写数据库记录,或者读取NT系统的系统日志都可以。
谢谢你的帮助,我试试看。其实我想建立一个虚拟的设备(打印机),会不会更好,无论如何
先给你100分
在打印前,用一个TABLE记录下要打印的报表名,打印条件(如月份),申请人,时间,是否可以打印等,并不停检测是否已回复,或自行取消,
在打印机电脑上或另一部电脑上的打印控制用户,用TIMER每30秒,搜索TABLE的新印请求并且没有回复的记录
有的话,依次或用列表显示,审批是否可以打印,并用TABLE记录相关信息,时间、人名、原因等
请求打印人员,检测到回复,执行打印或取消