【问题标题】:Subscript out of range error at Word Load - VSTO字加载时下标超出范围错误 - VSTO
【发布时间】:2020-01-31 11:27:42
【问题描述】:

我参与过一个项目,其最终结果是一个单词插件,它是 VSTO 插件(Word 功能区)+ C# dll 集 + 启用宏的模板 (MyProject.dotm) 的协作。

项目开发已经完成,现在正在进行高级安装程序部分(由其他人完成)。 根据article,我们在 VBA (MyProject.dotm) 的 VSTO 插件中有调用代码。 将为 32 位和 64 位创建两个单独的安装程序。

现在我的问题是,我们收到 Visual basic 运行时错误,Runtime error '9' : Subscript out of range 在产品安装后加载 word(64 位机器和 Word 64 位)。

我搜索了错误并找到了这个article,并且能够通过

修复错误

将 VSTO 项目的 Start Action(在调试 - 项目属性下)设置为 Start external program,并将其值设置为 C:\Program Files\Microsoft Office\root\Office16\WINWORD.exe 并构建项目,将安装程序的dll集(C:\Program Files\MyProject)替换为项目的新dll并加载word。

现在我的问题是,

我想找到一个适用于 32 位和 64 位机器以及 32 位和 64 位办公室的全局修复程序。我可以将任何修复程序应用于项目以修复此错误吗?还是应该在安装程序中修复?

提前谢谢你。

【问题讨论】:

    标签: c# ms-word vsto 32bit-64bit


    【解决方案1】:

    由 Microsoft 发现此 article

    您必须在部署时创建一组特定的注册表项 使用 Visual Studio 创建的 VSTO 外接程序。这些注册表 条目提供启用 Microsoft Office 的信息 应用程序来发现和加载 VSTO 外接程序。

    当您构建项目时,Visual Studio 会创建这些注册表 开发计算机上的条目,以便您可以轻松运行和 调试 VSTO 外接程序。如果您使用 ClickOnce 部署您的 VSTO 加载项,在最终用户上自动创建注册表项 计算机。如果您使用 Windows Installer 部署您的 VSTO 外接程序,您 必须配置 InstallShield Limited Edition 项目以创建 最终用户计算机上的注册表项。

    我已经根据文章添加了所需的注册表值,它解决了 运行时错误 '9' : Subscript out of range 错误。

    【讨论】:

      猜你喜欢
      • 2015-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多