日期:2014-05-17  浏览次数:20911 次

C#如何让软件自带的打印按钮不起作用(如点击word的打印按钮后作用),而执行自己事先写好的winform打印程序
想截获打印命令,然后在打印过程中执行自己写好的Winform程序,实现让用户选择,给文档添加页眉页脚等功能。或者有没有其他什么思路呢?

------解决方案--------------------
C#干不了这事。你有多少万个汇编程序员拿来做这个事情?每个程序的打印过程都可以不一样。
------解决方案--------------------
引用:
Quote: 引用:

停不了,你可以试试打印时不加页眉和页脚,在你打印之前自己编辑好,在打印!
这块的添加页眉页脚我只是举了个例子。。还有其它的操作
现在我是没有见过打印命令发送之后能停止的,全部都是打印前把需要的打印的内容和格式设置好的。帮不了楼主了
------解决方案--------------------
楼主想象力好强,估计是不行的。
------解决方案--------------------
什么行为叫打印没有确切的定义。比如资源管理器,打印文件这功能就是查注册表之后执行命令行,你难道就去抓所有的注册表操作然后和所有的进程创建操作比较不成?
------解决方案--------------------
每一种机制都有不同的流程。例如针对Word,你可以很方便的编写一个Word Add-In或者Excel Add-in或者Project Add-in 等,来控制打印行为。从你的vs的菜单上选择“创建-工程”选择Office分类,你可以看到这些工程模版。

不同的应用处理流程不同,或者你需要开发一丁点“底层”,将上层调用暴露出来。

随便搜了参考文章:
http://www.blackice.com/Printer%20Drivers%20Resource%20Tool%20Kit.htm
http://www.colorpilot.com/emfprinterpilot.html