这种情况可能有点局限性,但问题的根源意味着,只要您通过具有应用程序控制或类似function的防火墙传递PostScript(可能还有其他types的打印作业),就可能发生这种情况(说,因为你有一个到远程站点的VPN隧道)。
我们在台式机上运行Brooks RPM以接受来自SAP服务器的PostScript打印作业。 基本上,它应用脚本来将input(PostScript文件)转换为PDF,给它一个不错的名字,并将其发送到用户的电子邮件地址,带有预格式化的主题行以便于转发。 SAP服务器位于我们的网站上。 我在这里和远程站点都有SAP用户,我们通过VPN隧道(连接的细节无关紧要)连接到这个站点。
有一段时间,某些文档在打印时向服务器发送无限重复的打印作业。 症状如下:
要解决这个问题,我们必须停止Windows打印机假脱机服务,清除%WINDIR%\ system32 \ spool \ PRINTERS并重新启动打印机假脱机服务 – 只有这样重复的打印作业才会停止。 我发现每次打印输出都会有不同的内容,这让我觉得奇怪 – 我猜测SAP服务器一直在生成格式不正确的PostScript文件,以响应来自打印服务器的每个故障报告,但是当我们检查SAP打印机假脱机日志 – 每次打印尝试只有一个logging输出。 从我对打印假脱机的理解(当然缺乏)来看,每次打印作业都不应该有不同的内容,因为内容实际上没有被重新生成。
事实certificate,我是对的 – 印刷工作被打破,但不是由SAP。
tl; dr版本:这是SonicWALL应用程序控制。
写剧本的人,远程站点的pipe理员,我的老板和我坐在我的现场解决问题。 我们设法将问题隔离到传输中发生的问题 – RPM服务器后台打印中的示例PS文件已损坏,但当我们将其转换为PDF时,客户打印机后台打印机上匹配的PS文件是完全正确的。 此外,使用远程站点pipe理员的笔记本电脑(请记住,他与我们在我的网站)打印问题文件没有触发洪水。
我们从远程机器触发了洪水,再次进行了networking检查 – stream量看起来完全正常。 然后,远程站点pipe理员看了一个不相关的日志,看到了一些完全closures的东西:

事实certificate,SonicWALL应用程序控制不正确地将打印作业的stream量识别为IM文件传输,并在检测时切断连接 – 这解释了打印作业内容的不一致性。 一旦我们将我们的打印服务器列入防火墙,问题就消失了。
现在看起来很明显,但后见之明是20/20。
因此,总之:如果您在通过防火墙的打印作业中遇到问题,请检查它们是否被任何types的应用程序过滤。