我正在为共享打印机打印作业
我在win server 2008上共享了一台打印机
我在Windows 7客户端计算机上使用此打印机
我正在开发一个为所有打印作业写入所有打印机通知的应用程序
对于打印队列中只有一个作业,我收到两个不同JobID和两个不同机器名称的作业通知。
我的问题是为什么只为发送到打印队列的一个作业创建两个作业?为什么他们如此不同?虚拟作业的机器名称为le client,而实际作业的机器名称为打印服务器
答案 0 :(得分:0)
根据我的理解,FindFirstPrinterChangeNotification会在客户端计算机上的应用程序触发作业时生成通知,并添加到客户端假脱机程序队列中。当客户端假脱机程序队列将打印作业转发到打印服务器时,会生成另一个通知。您可以尝试使用PRINTER_CHANGE_SERVER而不是PRINTER_CHANGE_ALL,并查看是否仍然生成2个通知。