pdf - 访问错误 2501 : The OutputTo action was canceled. 从系统帐户运行

标签 pdf ms-access-2010

我在使用 Microsoft Access 2010 时遇到问题。我有一个报告模块,可以将报告打印到打印机或文件中。报告可以是用户请求的,也可以是自动打印的。用户请求的报告从登录用户的桌面运行。自动打印由我的 Windows 服务启动。

我们曾经将这些打印到 .RTF 并且它们工作正常。我们想修改我们的访问报告数据库以打印为 .PDF。这就是乐趣的开始。如果我们将 access 数据库作为用户应用程序启动,则报告打印良好。如果我们从 Windows 服务启动 access 数据库,我们会收到错误 2501“OutputTo 操作已取消”。

此应用程序在 Windows 2008 Server R2 上运行。

DoCmd.OpenReport "Summary", acViewPreview
DoCmd.OutputTo acOutputReport, "Summary", acFormatPDF, DataBasePath & "Summary.pdf"
DoCmd.Close acReport, "Summary", acSaveNo

如果我将 acFormatPDF 更改为 acFormatRTF(并将文件名更改为 summary.rtf),则可以正常工作。如果我以登录用户身份运行此代码,它可以正常工作并生成 PDF。如果我将 Windows 服务更改为“以用户身份运行”而不是系统帐户,它也可以正常工作。

不幸的是,我无法将服务作为用户帐户运行(没有大量测试)。

关于为什么系统帐户不能输出到 PDF 的任何想法?

最佳答案

我知道这是一个旧线程 - 但我想为这个问题提供一个潜在的解决方案,以防其他用户遇到类似问题。

我试图做一些非常相似的事情,发现同样的事情也发生在我身上。我的解决方案是将 Stephen Lebans 的 ReportToPDF(可在此处找到:http://www.lebans.com/reporttopdf.htm)集成到我的项目中,并将我的电话从

    DoCmd.OutputTo acReport, strReportName, acFormatPDF, strFilePath


    modReportToPDF.ConvertReportToPDF strReportName, , strFilePath, , False

在调整 C:\Windows\Temp 文件夹的权限后,我的服务现在可以从本地系统帐户打印 PDF。

如果您还没有找到解决方案,您可能需要考虑将其作为一个选项。

关于pdf - 访问错误 2501 : The OutputTo action was canceled. 从系统帐户运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20060388/

相关文章:

android - 如何在使用 pdf(Android) 加载 url 的 Web View 上启用捏合缩放?

c# - OleDb SQL 查询中的两个内部联接

sql - SQL Select 后匹配上一条记录

excel - 如何通过 Access VBA 代码处理 Excel 工作簿

Python:从 .msg 文件保存附件

python将多个子图图形保存为pdf

pdf - 如何在 pdf 中创建可填写的输入表单?

c# - iTextSharp - 添加垂直文本框

ms-access - 微软 Access 2010 : "collating sequence not supported with the specified file format"

database - 缺少 : Outlook 16. 0 对象库 (msoutl.olb)