Pdf 将-c选项添加到Ghostscript命令时,打印机弹出窗口会出现,即使它已被抑制
考虑以下在windows上从命令行调用的ghostscript命令Pdf 将-c选项添加到Ghostscript命令时,打印机弹出窗口会出现,即使它已被抑制,pdf,ghostscript,postscript,Pdf,Ghostscript,Postscript,考虑以下在windows上从命令行调用的ghostscript命令 "C:\Program Files\gs\gs9.23\bin\gswin64c.exe" -sDEVICE=mswinpr2 -dORIENT1=false -dNOPROMPT -dNOPAUSE -dPrinted -dBATCH -dNOPAUSE -dNOSAFER -q -dFIXEDMEDIA -dDEVICEWIDTHPOINTS=398 -dDEVICEHEIGHTPOINTS=157 -dNOPAGEPRO
"C:\Program Files\gs\gs9.23\bin\gswin64c.exe" -sDEVICE=mswinpr2 -dORIENT1=false -dNOPROMPT -dNOPAUSE -dPrinted -dBATCH -dNOPAUSE -dNOSAFER -q -dFIXEDMEDIA -dDEVICEWIDTHPOINTS=398 -dDEVICEHEIGHTPOINTS=157 -dNOPAGEPROMPT -dQUIET -dNumCopies=1 -sOutputFile="\\spool\BWLAB05" "c:\print\download\133679.pdf"
这个命令非常有效。打印出来时没有弹出框。现在我添加以下内容
-c "<</Orientation 2>>setpagedevice"
-c“设置页面设备”
按上面的命令进行
"C:\Program Files\gs\gs9.23\bin\gswin64c.exe" -sDEVICE=mswinpr2 -c "<</Orientation 2>>setpagedevice" -c "quit" -dORIENT1=false -dNOPROMPT -dPrinted -dBATCH -dNOPAUSE -dNOSAFER -q -dFIXEDMEDIA -dDEVICEWIDTHPOINTS=398 -dDEVICEHEIGHTPOINTS=157 -dNumCopies=1 -sOutputFile="\\spool\BWLAB05" "c:\print\download\133679.pdf"
“C:\Program Files\gs\gs9.23\bin\gswin64c.exe”-sDEVICE=mswinpr2-C“setpagedevice”-C“quit”-dORIENT1=false-dNOPROMPT-dPrinted-dBATCH-dNOPAUSE-dNOSAFER-q-dfexedmedia-dDEVICEWIDTHPOINTS=398-ddeviceheighttpoints=157-dNumCopies=1-soutfile=“\\spool\BWLAB05”C:\print\download\133679.pdf”
此时将显示“打印”窗口。我没有改变命令的其他部分。是什么导致了这种情况?如何停止显示打印窗口?操作数到重影脚本的顺序很重要。特别是在使用
-c
开关时,它引入了要执行的PostScript
实际上,您在这里运行两个命令:
-sDEVICE=mswinpr2 -c "<</Orientation 2>>setpagedevice" -c "quit"
-dORIENT1=false -dNOPROMPT -dPrinted -dBATCH -dNOPAUSE -dNOSAFER -q -dFIXEDMEDIA -dDEVICEWIDTHPOINTS=398 -dDEVICEHEIGHTPOINTS=157 -dNumCopies=1 -sOutputFile="\\spool\BWLAB05" "c:\print\download\133679.pdf"
这样会更好。注意,初始命令行有一个重复的NOPAUSE,并指定NOPROMPT和NOPAGEPROMPT(如果设置了NOPROMPT,则不需要NOPAGEPROMPT,如果设置了NOPAUSE,则两者都不需要)
最后,我敦促您不要使用-dNOSAFER
,虽然它目前没有任何效果(因为这是默认设置),但我们很快会使默认设置更安全,并且设置-dNOSAFER
将大大降低您运行文件时的安全性
您现在应该真正使用-dSAFER
。有许多CVE反对这一点,目前正在流传的概念证明如果您不使用-dSAFER
,可能会对您的计算机产生不良影响(运行任意可执行文件、打开、写入、删除文件等)。如果您不知道为什么要使用-dNOSAFER
,请改用-dSAFER
哦,你也应该升级到当前版本,9.27,你使用的版本已经有一年了
"C:\Program Files\gs\gs9.23\bin\gswin64c.exe" -sDEVICE=mswinpr2 -dORIENT1=false -dNOPROMPT -dPrinted -dBATCH -dNOSAFER -q -dFIXEDMEDIA -dDEVICEWIDTHPOINTS=398 -dDEVICEHEIGHTPOINTS=157 -dNumCopies=1 -sOutputFile="\\spool\BWLAB05" -c "<</Orientation 2>>setpagedevice" -f "c:\print\download\133679.pdf"