Excel 自动化 : PDF export causes "Printer setup" popup

标签 excel pdf office-interop office-2007

我正在开发一个用于自动生成 Excel 到 PDF 的应用程序。时不时地(并且没有任何明显的原因,程序运行时会出现以下弹出窗口:

Print driver host for 32bit applications stopped working.



Print driver host for 32bit applications stopped working

不久之后,这个:

Printer setup



Printer setup Popup

如果有的话,我需要在这里做什么?我的应用程序并不过分复杂。错误总是(100%)发生在这一行:
_application.ActiveWorkbook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF,
    pdfTemplatePath, Excel.XlFixedFormatQuality.xlQualityStandard, 
    _, _, 1, pdfPrintAreaEnd);

其中有问题的变量是:
Excel := Microsoft.Office.Intertop.Excel
_application := Excel.Application
_ := System.Type.Missing
pdfPrintAreaEnd := int 6

异常信息如下:
System.Runtime.InteropServices.COMException (0x800A03EC):
    Exception from HRESULT: 0x800A03EC

这里发生了什么?而且,更重要的是:为什么它只是偶尔发生一次?

最佳答案

好的,所以在对这件事进行了一些研究之后,我遇到了我认为是最多的一个 confuzzling到目前为止我遇到的关于 Excel 自动化的事情。

该错误消息与其他自动和非自动使用 Excel 的情况一致。所有这些情况的共同点是(系好安全带!)网络打印机被设置为默认打印机 .

没错 - 默认使用网络打印机,即使您使用完全不同的打印机或根本不使用打印机进行打印(例如导出为 PDF,这与打印到例如 Adob​​e PDF 打印机不同,对吧?)有时会在某些机器上弹出此错误。

我将默认打印机更改为内部打印机,例如 Microsoft XPS 文档打印机,再次尝试,我现在可以导出成百上千的 PDF,而不会出现任何错误消息。

关于Excel 自动化 : PDF export causes "Printer setup" popup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24936748/

相关文章:

excel - 关闭工作簿时出现内存不足错误 - Excel VBA

Python Pandas Excel 显示

java - 无论如何可以使用 iText 保存交互式 pdf 吗?

c# - 如何使用 c# Excel.Interop 从 Excel 工作表中获取现有范围名称?

c# - 使用 ExcelLibrary 在 C# 中读取 Excel .xlsx 文件时出现 OutOfMemoryException

c# - epplus 部分已经存在

android - 像IOS SDK一样在Android SDK中预览和打开PDF文档

java - 在 iText 中保留嵌入字体

ms-word - WinDbg:如何从核心转储中获取在 Word 对话框中显示的消息?

c# - 在运行时从列表创建对象及其属性