3

我正在使用 ghostscript ( lib/ghostpdf.inf) 附带的 Windows postscript 打印驱动程序从打印作业生成 postscript 文件。

但是 postscript 驱动程序没有经过数字签名,因此 Windows 8 和 Windows Server 2012 不允许在未启动到“允许未签名驱动程序”模式的情况下安装它。

您知道是否有任何已签名的版本可与最新的 Windows 版本一起使用?

如果不是这种情况,我可以自己编译和签名,但是我无法在http://git.ghostscript.com/ghostpdl.git的 git repo 中找到 postscript 打印驱动程序的源代码。由于我不熟悉构建驱动程序,因此我可能只是监督它。

谁能给我一个提示,我可以在哪里找到 postscript 驱动程序文件来自己编译它?

编辑: .INF 文件如何告诉 Windows 驱动程序二进制文件的位置?我已经查看了“ClassGUID”,但是它对于所有驱动程序都是一样的,并且注册表项说明了一些关于C:\Windows\System32\ntprint.dll. 我不认为这对问题很重要,是吗?

4

3 回答 3

4

要签署“ghostscript 驱动程序”,您只需签署 Ghostscript 附带的 INF 文件。

technet 上有一篇文章描述了这样做所需的步骤。

步骤是:

1) 创建/获取证书
2) 确保您的计算机信任该证书(如果需要,将其放置在您的证书存储中)
3) 下载并安装Windows 驱动程序工具包 (WDK)
4)CatalogFile=oemprint.cat将 INF 文件中的更改为ghostpdf.cat
5) 更改DriverVer=01/02/2007,1.0.0.1to DriverVer=01/01/2013,1.0.0.1(也许您需要其他日期,您将在下一步中看到)6
)使用该Inf2Cat工具创建一个 cat 文件(C:\Program Files (x86)\Windows Kits\8.0\bin\x86对我来说是 at):

注意
使用 cmd.exe 而不是 powershell,因为 powershell 总是Parameter format not correct.出错

命令:

inf2cat.exe /driver:c:\path\to\folder\whereCatFileIsIn /os:7_X86,7_X64,8_X86,8_X64[,other OS you'd like to support]

7)使用(与工具signtool相同的目录)对cat文件进行签名Inf2Cat

命令:

SignTool.exe sign /f "C:Path\to\my.pfx" /t http://timestamp.verisign.com/scripts/timestamp.dll "C:\Path\To\ghostpdf.cat"

(有关可用参数的更多信息,请参阅signtool 文档)

于 2013-10-25T08:51:50.107 回答
0

.inf 文件不是驱动程序,它们只是带有一些安装程序信息的文本文件。这没有签名版本,您也不需要它,您可以将任何 PostScript 驱动程序的输出与 Ghostscript 一起使用。

您无法编译 .inf 文件,因为没有要编译的内容,我不知道您如何在最新版本的 Windows 中签署这样的文件,但如果您想尝试一下,您可以打开 .inf 文件。 inf 文件,使用文本编辑器。

于 2013-10-23T07:14:41.927 回答
0

问:您知道是否有任何可与最新 Windows 版本一起使用的签名版本?

* 解决方法 * A:对于我的 Postscript 驱动程序问题,我重新使用了来自免费软件 PDF 生成器 PDFil Writer 的已签名驱动程序。 https://www.pdfill.com/freewriter.html

就我而言,我是 Sybase Powerbuilder 开发人员,我的应用程序依赖于 Ghostscript Postscript 驱动程序。

我希望这有帮助。

于 2015-09-30T10:58:07.347 回答