监听打印池,删除打印作业

wodecuoshi230 2013-09-03 11:45:19
想实现功能,监听打印池,删除打印作业。
现在程序的问题是,当连续点击打印时,有些打印任务已经在打印机端进行打印了(未删除成功)。
应该是有多个打印任务时, 上一个打印任务未处理完成,下一个打印任务就来不及被处理(所以文件在打印机端打印了)。 请教程序该如何修改。谢谢
while (true)
{
// Query to get all the queued printer jobs.
string searchQuery = "SELECT * FROM Win32_PrintJob";
// Create an object using the above query.
ManagementObjectSearcher searchPrintJobs = new ManagementObjectSearcher(searchQuery);
// Fire the query to get the collection of the printer jobs.
ManagementObjectCollection prntJobCollection = searchPrintJobs.Get();
// Look for the job you want to delete/cancel.
foreach (ManagementObject prntJob in prntJobCollection)
{
//delete job
prntJob.Delete();
}
}
...全文
199 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wodecuoshi230 2013-09-03
  • 打赏
  • 举报
回复
up up up
wodecuoshi230 2013-09-03
  • 打赏
  • 举报
回复
up up up
jshi123 2013-09-03
  • 打赏
  • 举报
回复
用System.Printing.PrintQueue.Pause()方法暂停队列,然后检查其中任务,不需要的删除后再Resume()

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧