【问题标题】:Access dB Throwing Runtime 5 Shell Error when Run in Access 2013 but not in Access 2010在 Access 2013 中但不在 Access 2010 中运行时,Access dB Throwing Runtime 5 Shell 错误
【发布时间】:2020-07-13 20:22:55
【问题描述】:

好吧,我被难住了。我构建了一个从 Yahoo Finance API 提取数据以编译报告的 dB。内置 Access 2010 并位于外网。一切都像肉汁一样工作。好吧,现在,我有一台专用的计算机,它将运行它。设置完成后,我得到了 Runtime 5,并在下面的代码中突出显示了“Shell”行:

Public Function RunYahooAPI()

Dim chromePath As String

  chromePath = """C:\Program Files\Google\Chrome\Application\chrome.exe"""

 Shell (chromePath & " -url http://download.finance.yahoo.com/d/quotes.csv?s=CVX%2CXOM%2CHP%2CSLB%2CPBA%2CATR%2CECL%2CNVZMY&f=nsl1op&e=.csv")

End Function

到目前为止我在网上搜索过的东西:

  1. 将其作为子与函数运行。没有变化
  2. 禁用了我的防病毒软件。没有变化
  3. 已检查参考。都符合 2010 年
  4. 取出外壳中的空间。没有变化
  5. 在网址周围添加了“”。没有变化
  6. 还直接登录电脑试试vs RC。没有变化

我真的对此束手无策。希望第二双眼睛能让我变直。

我可能还应该提到我是通过远程连接运行的。

【问题讨论】:

  • 如果您不能将下载完全包含在 your code 中,我可能会建议您启动 chrome 并使用像 wget 这样的轻量级内容。
  • 您的代码尝试写入 Program Files 目录,这在启用 UAC 时是不允许的。错误 5 是拒绝访问。据推测,您没有在自己的机器上启用 UAC(为您感到羞耻),但它已在新机器上启用。
  • Ken,你是说如果我将 chrome 可执行文件移动到桌面,甚至网络,它会修复它吗?
  • 我刚刚将它重新映射到桌面。没有骰子。并且 UAC 在两台机器上都被禁用。
  • 彼得,我之前曾尝试过。我记得我改用这种方法是因为以前不起作用。

标签: shell ms-access vba ms-access-2013


【解决方案1】:

经过更多搜索,64 位与 32 位的播放效果不佳。切换到 32 位操作系统和 Office,一切正常。显然,这种不匹配会导致很多随机问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-14
    • 1970-01-01
    相关资源
    最近更新 更多