gpt4 book ai didi

excel - 如何在打印 Excel 表格时接收来自打印机/打印后台处理程序的通知?

转载 作者:行者123 更新时间:2023-12-04 21:07:21 24 4
gpt4 key购买 nike

我在 C#.NET 中编写了一个 Excel 加载项。当用户打开 Excel 工作簿并在工作表上打印时,Excel 会进行打印。 excel 只引发一个通知,即 AppEvents.Workbbok_BeforePrint() 事件。之后,在打印页面之前不会为每个页面生成任何事件。

我分析了从 excel 端接收通知的方法。但是找不到一个。
然后我尝试了从打印机/打印后台接收通知的选项。
如何从打印机/打印后台处理程序获取通知,以便我收到打印的每一页的通知。

请帮我解决这个问题。

谢谢并恭祝安康,
Sundareswaran Senthilvel

最佳答案

这很难做到,尤其是在打印作业中没有很多页面的情况下。这可能比它的值(value)更多的工作。 :)

但是,您可以使用 WinAPI 函数 EnumJobsGetJob .

调用 OpenPrinter获取打印机句柄。

调用 GetPrinter与级别 2 找出工作的数量。

调用 EnumJobs .检查 JOB_INFO_1、JOB_INFO_2 或 JOB_INFO_3(取决于您要求的信息 - 上面其他页面上指向这些结构的链接以及它们告诉您的内容),直到您从 Excel 中找到打印作业。

调用 GetJob使用该 JobID 来获取有关打印操作当前状态的信息。

关于excel - 如何在打印 Excel 表格时接收来自打印机/打印后台处理程序的通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6792066/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com