gpt4 book ai didi

javascript - 在 Microsoft Surface (Excel-VBA) 上运行时 GetJSObject 失败

转载 作者:数据小太阳 更新时间:2023-10-29 05:35:24 25 4
gpt4 key购买 nike

我在 Excel-VBA 中编写了一个小实用程序,该实用程序还与少量单独的 .pdf 文件中的 Acrobat Javascript 交互。

代码已经过广泛测试,在我的台式电脑上运行完全符合预期。但是,我最终需要在 Microsoft Surface 平台上实现此代码。当我尝试在 Microsoft Surface 上运行来自 Excel 文件的相同代码时,代码在使用“GetJSObject”的任何行处都停止运行。

例如。以下内容在我的 PC 上运行良好,但在我的 Surface 上导致“不支持对象或方法”错误。

Set gAPP = CreateObject("AcroExch.App")

Set gPDDOC = CreateObject("AcroExch.PDDoc")

If gPDDoc.Open(pdfFileName) Then Set jso = gPDDOC.GetJSObject

到目前为止,我已经能够在网上找到一些提示,表明 GetJSObject 在 64 位环境中无法正常工作,而我的 Surface 运行 64 位 Windows 10 和 32 位 Excel。

但是,我认为仅凭这一点并不能解释两台机器的行为差异;我的桌面运行 64 位 Windows 7 和 32 位 Excel,一切正常。

我应该去哪里寻找问题的根源(和解决方案)?

编辑/更新:getJSObject 语句实际上按预期工作,如果 我采取额外步骤,在 Acrobat 中手动打开相关 .pdf 文件之一的副本在运行我的 VBA 代码之前。我认为这意味着对象定义(例如 Set gAPP = CreateObject("AcroExch.App"))在 Surface 上的工作方式与我的 PC 不同——而不是 getJSObject 命令具体是不是像当初想的那样?

到目前为止,对我来说,这如何/为什么会是真的(更不用说我如何着手解决这个问题了)对我来说意义不大。

最佳答案

不确定是否已经回答了这个问题,但是我会采取两种行动进行研究:

1.

看看你是否可以在没有构造函数的情况下启动它,方法是:

Set AcroApp = New AcroApp

而不是

Set AcroApp = CreateObject("AcroExch.App")

2.

确保您使用的是相同版本的 acrobat,根据我的研究,此错误发生在 Google 搜索查询的第一个结果中:

createobject acroexch.app error 429
You cannot do this with Adobe Reader, you need Adobe Acrobat.

此 OLE 界面适用于 Adob​​e Acrobat,不适用于 Adob​​e Reader。

关于javascript - 在 Microsoft Surface (Excel-VBA) 上运行时 GetJSObject 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36141807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com