【问题标题】:MS Access automationMS Access 自动化
【发布时间】:2014-08-19 17:08:09
【问题描述】:

我需要将 MS Access 作业作为自动化任务运行。我知道 Access 并不是真正为此类任务而构建的,但除了一个关键部分外,我的大部分工作都在工作。简而言之,这是它应该做的:

  • 为用户生成 PDF 报告
  • 为用户生成电子邮件
  • 将 PDF 附加到电子邮件中
  • 通过 SMTP 发送电子邮件

如果用户登录到桌面会话,它就会起作用。该进程需要作为自动化进程运行,无需用户登录。使用 Powershell 和内置的任务计划程序(Windows 7 Ultimate,64 位),我可以让它按计划运行。但访问代码在尝试保存 PDF 时失败。通过实验,我了解到我需要保存到“我的文档”文件夹,并且我的进程以“我”身份运行,但我一直收到相同的错误消息:

8/18/2014 4:00:17 PM Report Error in <method name>
2302
-1
0
<project name> can't save the output data to the file you've selected.
MTS

所以我怀疑如果我选择了正确的位置来保存 PDF,它会起作用。是否有系统和/或任务计划程序 (TS) 可以保存到的特殊位置?有没有一种特殊的方法来共享一个文件夹,它允许 TS 写入它(不需要用户登录)?

【问题讨论】:

  • 什么要求您保存到我的文档文件夹?它可以保存到不同的文件夹(例如 C:\Test 或类似的文件夹)而不会出错吗?
  • 不,如果我在登录或未登录时尝试保存到 Documents 文件夹以外的任何位置(或它下面的任何位置),它会给出与上述相同的错误。
  • 不是我的答案,但请查看:stackoverflow.com/questions/37010776/…(文件夹创建位对我有用)
  • @EndUzr:谢谢,我去看看。

标签: ms-access powershell scheduled-tasks scheduler windows-task-scheduler


【解决方案1】:

我个人通常将所有这些类型的文件/报告保存到%TEMP% 文件夹中,这似乎适合此应用程序,因为它只是将其存储到通过电子邮件发送。

我还没有在保存到此文件夹时遇到任何权限问题。

如果您不熟悉%TEMP%,您可以搜索Environ 变量,系统使用的常用文件夹通常有不同的有用文件路径,例如%APPDATA%,%USERPROFILE%` 等

【讨论】:

  • Temp 确实是这种文件最合适的地方。只要确保在发送电子邮件后删除文件 - 请记住,妈妈总是说要自己清理。
【解决方案2】:

感谢所有输入。经过详尽的测试(基于上述 ashareef 的响应),我证明无法完成。我尝试保存到以下环境变量位置:

  • 温度
  • 应用数据
  • 本地应用数据
  • 公开
  • 用户资料

我也试过了:

  • C:\用户
  • C:\Temp
  • C:\Users\\Documents

如果我将任务设置为运行,无论我是否登录,这些都不起作用:

一个位置确实有效,但前提是我已登录并且我将任务设置为仅在我登录时运行:

  • C:\Users\\Documents

总结一下:

  • 从 Access 保存文件
  • 作为计划任务运行
  • 无论您是否登录

不可能!所以在工作中,我们将采用 B 计划。感谢您的帮助!

【讨论】:

  • 无法做到这一点的说法是完全错误的。如果您选择“用户未登录时运行”选项,那么您将使用不同的登录方式运行任务。这意味着您必须为该用户(可能是该计算机的管理员用户)设置受信任的位置。
  • 我设置了“运行任务时,使用以下用户帐户:”。它应该像我一样运行。但是当从任务计划程序运行时,它的行为就像它没有访问文件系统任何部分的权限一样。我刚刚尝试将其保存到管理员帐户(C:\Users\Administrator\Documents),但它也失败了。如果真的有办法,我很想听。
  • 好吧,这个星球上的每个人都这样做,所以我想我们可以进入一个骗子的骗子裤子着火类型的讨论,但这种类型的铁饼是针对 2 岁的孩子和醉酒的牛仔竞技表演的小丑。您有一些权限问题。签出:technet.microsoft.com/en-us/library/cc785125(WS.10).aspx
  • 我查看了这篇文章并做了它推荐的一切,但在我的一生中,如果没有登录用户,我无法让 Access 将文件作为计划任务写出。我也不想参与“骗子,骗子”的争论,但我尝试过的任何方法都不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-23
  • 1970-01-01
  • 1970-01-01
  • 2010-12-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多