8

我使用Add-in Express在 .NET 中编写了一个 Microsoft Excel 加载项,并将其部署到大约 50 个不同的用户站点,所有站点都在 Windows XP 上运行 Office 2003。该加载项在大多数站点上都可以正常工作,但在少数情况下,Excel 似乎会在一段时间后禁用该加载项,他们必须在禁用的项目列表中找到它才能重新启用。重新启用似乎可以解决它,至少是暂时的,尽管现在说它是否会再次发生还为时过早。所以我想弄清楚为什么 Excel 会禁用加载项,但我在这里寻找的只是找出 Excel 禁用加载项的原因的一般方法。在我的情况下,加载项在远程站点上运行,我只能有限地进行故障排除。我确实查看了事件日志并没有发现任何东西。我的加载项中也有错误日志记录,但没有发现任何问题。

有什么建议么?

4

2 回答 2

6

我很确定 Excel 不会自动禁用你的插件(我没有找到任何描述这种行为的东西,如果我错过了,请纠正我)。但是,如果插件崩溃/挂起等,那么下次 Excel 启动时,会弹出一个对话框,提示“此插件出现致命错误,您要禁用它吗?” (正如克里斯指出的那样)。

我发现用户总是会单击“是”,这样他们就可以继续工作了。可能值得与您的用户交谈,看看他们是否见过这样的事情。

显然,您想深入了解插件的潜在问题。我想您的下一步可能是(如果这些是您尝试过的明显调试步骤,我深表歉意):

  • 一定要添加一些配置来加快您的日志记录,以尝试缩小正在发生的事情。
  • 与用户交谈并找出导致 Excel 挂起/崩溃的情况,因此您可以尝试重现问题(如果这是崩溃,那么日志记录可能没有多大帮助)。
  • 在您的插件或您正在调用的代码中阻止可能导致用户杀死无响应的 Excel 的调用?

祝你好运追踪问题。

编辑:我很抱歉,在某些情况下 Excel 会自动禁用插件。我在插件的安全中心帮助中找到了以下内容:

禁用未签名加载项的通知(代码将保持禁用状态)仅当您选中要求受信任的发布者签名的应用程序扩展复选框时,此复选框才可用。在某些情况下,包含加载项的动态链接库 (.dll)(动态链接库:可以从 Visual Basic 过程调用并在运行时加载并链接到应用程序的一组例程。)可能未签名。在这些情况下,由受信任的发布者签名的加载项被启用,但未签名的加载项被静默禁用。

禁用所有应用程序加载项(可能会影响功能)如果您不信任任何加载项,请选中此复选框。所有加载项都被禁用,没有任何通知,并且其他加载项复选框不可用。

于 2009-03-05T01:23:57.093 回答
4

我已经看到当加载项出现致命错误并且进程终止时会发生这种情况。Excel 会注意到这一点,并在下次自动禁用或提供禁用。您的加载项是否记录此类错误?

于 2009-02-10T00:12:12.173 回答