gosoft
驱动牛犊
驱动牛犊
  • 注册日期2003-03-02
  • 最后登录2007-07-30
  • 粉丝1
  • 关注0
  • 积分230分
  • 威望25点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
阅读:2094回复:2

开发一个虚拟打印机的问题

楼主#
更多 发布于:2005-05-26 11:16
我参考http://www.driverdevelop.com/forum/html_58415.html?1117076686 学习打印驱动,但是碰到几个问题:

1. 我在用户接口的文件属性单中添加了一个属性页,同时也定义了私有的模式变量,利用利用打印机的属性对话框中打印首选项属性单中我自己添加的属性单来修改这个模式变量,但是当我在一个打印程序中,例如在word中利用打印机的属性对话框来修改打印首选项 后,在另一个程序中(如:记事本)打印的时候 打印首选项的我定义的那个模式变量的值也跟着变化了,如何避免这样的情况???

2. 如何在打印驱动的客户化用户接口中截取打印事件,实现在确定打印的时候,检查某些值(如:上面我自己定义的模式值)来确定打印是否继续?????我尝试了IPrintOemUI接口的DriverEvent 和 PrinterEvent 方法,但是都不行啊。

请高手帮忙。
terrificskyfox
驱动小牛
驱动小牛
  • 注册日期2003-03-12
  • 最后登录2014-04-28
  • 粉丝0
  • 关注0
  • 积分7分
  • 威望11点
  • 贡献值1点
  • 好评度10点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2005-05-26 14:43
1、在一个应用程序中设置的参数只影响这个应用程序本身,对其它
应用程序没有影响。如果想修改全局参数,需要在打印机文件夹中修
改属性。

2、现在应该在StartDoc一类的函数中完成这类功能。DriverEvent和
PrintEvent不是用来干这个的。
gosoft
驱动牛犊
驱动牛犊
  • 注册日期2003-03-02
  • 最后登录2007-07-30
  • 粉丝1
  • 关注0
  • 积分230分
  • 威望25点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2005-05-28 14:07
terrificskyfox

首先感谢您的回答;不过可能您误解了我第二个问题的意思。

我的意思是如何利用IPrintOemUI接口来截取打印驱动中用户接口DLL中DrvDocumentEvent函数的功能,就象IPrintOemUI2接口中DocumentEvent方法的功能一样。但是IPrintOemUI接口不提供这样的DocumentEvent方法,而IPrintOemUI2接口又必须运行在XP平台,那么想在Win2000平台上完成同样的功能,该如何做?
游客

返回顶部