直接打印时GhostScript挂起

本文关键字:GhostScript 挂起 打印 | 更新日期: 2023-09-27 18:27:59

我们正尝试使用GhostScript 9.18直接打印Intranet应用程序中的PDF文件,其架构如下:

  • Windows Server 2012 r2 64
  • 适用于Windows 9.18的GhostScript(同时尝试了32位和64位版本)

但为了我们的测试目的,我只是从命令行进行测试。当我在命令行中键入时:

gswin32c.exe -dPrinted -dNOPAUSE -dNumCopies=1  -sDEVICE=mswinpr2 -sOutputFile="%printer%''creeks'K42N1CN1" "D:'temp'test.pdf" 

其中''creeks''K42N1CN1是我的NetWork Window打印机(Kyiocera)。

gswin32c.exe正在挂起。我在消息框或事件查看器中看不到任何好的解释。但如果需要的话,我可以发布整个消息。

有趣的细节是:

  • 如果我给出的打印机名称不正确,Ghostcipt会弹出标准的windows打印对话框,我会选择相同的网络打印机,然后文档就会完美打印
  • 从PDF文件到光栅图像(png)的转换工作得很好
  • 在和admin命令提示符下问题相同
  • 删除所有可选参数确实改变了一些东西

也许我怀疑:

  • -sDEVICE参数的值不正确
  • 内存访问失败,因为当我尝试调试GhostScript程序时,我会收到消息"Exception non-géréeà0x101eddc9 dans gswin32c.exe:0xC0000005:Violation d‘accès lors de la讲座de l’position 0x3130654e。"(很抱歉,这是法语)

感谢图卢兹''法国的任何帮助

向致以最良好的问候

事件查看器崩溃报告:

Version=1
EventType=APPCRASH
EventTime=130953327000374373
ReportType=2
Consent=1
ReportIdentifier=a7aa1a77-a94e-11e5-80d6-0050569e7a66
IntegratorReportIdentifier=a7aa1a76-a94e-11e5-80d6-0050569e7a66
WOW64=1
NsAppName=gswin32c.exe
Response.type=4
Sig[0].Name=Nom de l’application
Sig[0].Value=gswin32c.exe
Sig[1].Name=Version de l’application
Sig[1].Value=0.0.0.0
Sig[2].Name=Horodatage de l’application
Sig[2].Value=56123d4d
Sig[3].Name=Nom du module par défaut
Sig[3].Value=gsdll32.dll
Sig[4].Name=Version du module par défaut
Sig[4].Value=0.0.0.0
Sig[5].Name=Horodateur du module par défaut
Sig[5].Value=56123d49
Sig[6].Name=Code de l’exception
Sig[6].Value=c0000005
Sig[7].Name=Décalage de l’exception
Sig[7].Value=001eddc9
DynamicSig[1].Name=Version du système
DynamicSig[1].Value=6.3.9600.2.0.0.272.7
DynamicSig[2].Name=Identificateur de paramètres régionaux
DynamicSig[2].Value=1036
DynamicSig[22].Name=Information supplémentaire n° 1
DynamicSig[22].Value=3376
DynamicSig[23].Name=Information supplémentaire n° 2
DynamicSig[23].Value=3376824fd83b1dc3948a498a9c840064
DynamicSig[24].Name=Information supplémentaire n° 3
DynamicSig[24].Value=7929
DynamicSig[25].Name=Information supplémentaire n° 4
DynamicSig[25].Value=792969fd05f031b74b3a51636e7a67ec
UI[2]=C:'Program Files (x86)'gs'gs9.18'bin'gswin32c.exe
UI[3]=gswin32c.exe a cessé de fonctionner
UI[4]=Windows peut rechercher une solution au problème en ligne.
UI[5]=Rechercher une solution en ligne et fermer le programme
UI[6]=Rechercher ultérieurement une solution en ligne et fermer le programme
UI[7]=Fermer le programme
LoadedModule[0]=C:'Program Files (x86)'gs'gs9.18'bin'gswin32c.exe
LoadedModule[1]=C:'Windows'SYSTEM32'ntdll.dll
LoadedModule[2]=C:'Windows'SYSTEM32'KERNEL32.DLL
LoadedModule[3]=C:'Windows'SYSTEM32'KERNELBASE.dll
LoadedModule[4]=C:'Windows'SYSTEM32'SYSFER.DLL
LoadedModule[5]=C:'Windows'SYSTEM32'SHELL32.dll
LoadedModule[6]=C:'Windows'SYSTEM32'GDI32.dll
LoadedModule[7]=C:'Windows'SYSTEM32'USER32.dll
LoadedModule[8]=C:'Windows'SYSTEM32'ADVAPI32.dll
LoadedModule[9]=C:'Windows'SYSTEM32'msvcrt.dll
LoadedModule[10]=C:'Windows'SYSTEM32'combase.dll
LoadedModule[11]=C:'Windows'SYSTEM32'SHLWAPI.dll
LoadedModule[12]=C:'Windows'SYSTEM32'sechost.dll
LoadedModule[13]=C:'Windows'SYSTEM32'RPCRT4.dll
LoadedModule[14]=C:'Windows'SYSTEM32'SspiCli.dll
LoadedModule[15]=C:'Windows'SYSTEM32'CRYPTBASE.dll
LoadedModule[16]=C:'Windows'SYSTEM32'bcryptPrimitives.dll
LoadedModule[17]=C:'Windows'system32'IMM32.DLL
LoadedModule[18]=C:'Windows'SYSTEM32'MSCTF.dll
LoadedModule[19]=C:'Program Files (x86)'gs'gs9.18'bin'gsdll32.dll
LoadedModule[20]=C:'Windows'SYSTEM32'comdlg32.dll
LoadedModule[21]=C:'Windows'SYSTEM32'WINSPOOL.DRV
LoadedModule[22]=C:'Windows'SYSTEM32'ole32.dll
LoadedModule[23]=C:'Windows'WinSxS'x86_microsoft.windows.common-controls_6595b64144ccf1df_5.82.9600.17810_none_7c5b6194aa0716f1'COMCTL32.dll
LoadedModule[24]=C:'Windows'SYSTEM32'SHCORE.DLL
FriendlyEventName=Fonctionnement arrêté
ConsentKey=APPCRASH
AppName=gswin32c.exe
AppPath=C:'Program Files (x86)'gs'gs9.18'bin'gswin32c.exe
NsPartner=windows
NsGroup=windows8
ApplicationIdentity=C5D66B61522557FE3034ACFE0B05988E

直接打印时GhostScript挂起

崩溃报告很少(如果有的话)有用。很难看出在调试时会发生访问冲突,而在不调试可执行文件时却不会收到这样的消息。

然而,最近在这个领域有一个修复:

http://git.ghostscript.com/?p=ghostpdl.git;a=提交;h=4703d04a614904cab9b1b04aee1478e31df52da

因此,您可能想要获得当前出血边缘源代码,重新构建并尝试它。如果您想调试Ghostscript,您无论如何都需要获得源代码并构建调试可执行文件,尝试调试发布二进制文件是徒劳的。。。。。

哦,将DEVICE=设置为mswinpr2以外的值只意味着它不会打印到您的打印机上,mswinpr2设备是唯一一个打印到Windows打印机的Ghostscript设备。