jjzjj

printQueue

全部标签

C++ 更改打印队列所有者

我想知道是否可以更改调出打印队列以查看排队的打印机文档时可见的“所有者”名称。我有一个Windows服务,它从用户那里接收文档并将其发送给Windows打印机,并且所有者始终是登录到运行该服务的工作站的用户的名称。我想将“所有者”更改为其他内容,这将在Windows服务加载和使用的C++WindowsDLL中完成。添加8/30/16@9:14amET谢谢你的建议,托马斯。我应该提到我的研究,但它又长又空。MSDN有一个SetJob函数,它可以采用4种结构中的一种(pJob=JOB_INFO_1…JOB_INFO_4)。JOB_INFO_1、2和4有一个LPSTRpUserName,它似

c# - 如何从打印机队列中检索作业列表或作业数量?

我正在寻找一种从特定打印机获取作业列表或作业数量的方法。在最好的情况下,我希望有一个“作业对象”代表一个打印作业及其在打印队列中的名称。这是必需的,因为我需要监视打印机的状态,这样我就可以用新的一批文档重新填充打印队列,而不会溢出打印后台处理程序提前致谢!编辑:添加了解决方案的代码片段privateintGetNumberOfPrintJobs(){LocalPrintServerserver=newLocalPrintServer();PrintQueueCollectionqueueCollection=server.GetPrintQueues();PrintQueueprint

c# - 识别原始打印机

我正在枚举PC中连接的打印机。我使用C#System.Printing命名空间完成了它。它运作良好。但它主要显示软件打印机,如MicrosoftXPSDocumentwriter、MicrosoftFax等。我想知道是否可以从枚举中删除这些软件打印机。我完成的代码如下所示:PrintQueueprintQueue=null;LocalPrintServerlocalPrintServer=newLocalPrintServer();//RetrievingcollectionoflocalprinteronusermachinePrintQueueCollectionlocalPrin

printqueue.addjob()停止执行

我正在尝试使用本地打印机打印XPS文件,而无需任何对话框。当我调用printqueue.addjob()执行停止时,它不会转到下一行代码,但不会引发任何异常,并且编程保持运行。我使用的代码:LocalPrintServerlps=newLocalPrintServer();PrintQueuepq=lps.GetPrintQueue("printQueueName");pq.AddJob("jobName",pathToFile,false);谢谢你。看答案我注意到同样的问题,但我只设法找到了一些解决方法。我试图通过使用CreateXpsDocumentWriter.Write方法,但这从我的

c# - PrintQueue.AddJob() 停止执行

我正在尝试在没有任何对话框的情况下使用本地打印机打印xps文件。当我调用PrintQueue.AddJob()时,执行停止,它不会转到下一行代码,但不会抛出任何异常,程序会继续运行。我使用的代码:LocalPrintServerlps=newLocalPrintServer();PrintQueuepq=lps.GetPrintQueue("printQueueName");pq.AddJob("jobName",pathToFile,false);谢谢。 最佳答案 我注意到了同样的问题,但我只设法找到了一些解决方法。我试图通过使用