Microsoft 服务器上缺少 Microsoft Print to PDF 驱动程序

Kne*_*ice 5 windows pdf pdf-generation driver windows-server-2012

我开发了一个 C# Web 表单应用程序,可以在服务器端生成 PDF 文档并将其发送到客户端我使用Microsoft Print To PDF (MPTP)PrintDocumentPrintPageEventArgs.Graphics.DrawString生成 PDF. This works great on my local machine.

\n\n

输入服务器:当我上传应用程序并尝试在服务器上运行它时,收到一条错误消息,提示未安装打印机。我检查打印机和设备,发现 MPTP 未在服务器上列出(解决我的问题的一种方法是将 MPTP 设置为默认打印机)。

\n\n

如果“打印机和设备”中没有 MPTP:

\n\n
    \n
  • 打开“打开或关闭 Windows 功能”并选中 MPTP。
  • \n
\n\n

问题是我那里也没有 MPTP。要解决这个问题:

\n\n
    \n
  • 打开设备和打印机
  • \n
  • 添加打印机
  • \n
  • “我想要的打印机未列出\xe2\x80\x99t”
  • \n
  • “通过手动设置添加本地打印机或网络打印机”
  • \n
  • 选择端口“文件:(打印到文件)”(我尝试了其他端口,也是一样的)
  • \n
  • 左侧(制造商)部分选择 Microsoft,右侧部分选择 MPTP
  • \n
\n\n

它应该安装 MPTP 的驱动程序,但问题是我的列表中没有 MPTP! This is the part that is problematic.

\n\n

我在网上找不到这个问题的帮助(甚至找不到未回答的问题)。我无法在线找到驱动程序,因此我可以手动安装它们,但不知道如何修复它。

\n\n

我尝试使用 CutePDF Writer 和 Spire.PDF 生成 PDF(我确实生成了 PDF,但本地字符不起作用 [\xc4\x8d、\xc5\xa1、\xc5\xbe],我必须使用 PdfDocument、PdfSection 、PdfTextWidget)。我不喜欢用 Spire.PDF 生成,因为我必须为多页文档实现正确的标题和签名(这是一件很痛苦的事情,我更喜欢使用已经编写并测试过的使用 PrintDocument 和 MPTP 的代码)。

\n\n

为什么我的服务器中缺少 Microsoft Print to PDF 驱动程序?

\n\n

服务器信息: Microsoft Windows Server Version 6.2 (Build 9200). \nInternet Information Services Version 8.5.9600.16384.

\n

Kne*_*ice 2

@AlexK 是对的。我刚开始使用服务器,错误地认为它运行的是 Windows 10,而实际上它使用的是 Server 2012 R2。

问题是我在谷歌上搜索“Windows 10 print to pdf”。当我尝试搜索 Server 2012 时,我发现Server 2012 上不存在Print to PDF,这就是我找不到它的原因。