VSTO Excel 加载项自动禁用
VSTO Excel add-in auto disables
我有一个已签名的 VSTO vb.net 加载项加载到 Excel 2013 中。大约有 200 个用户,90% 没有问题。对于 10%,每次他们启动时 Excel,加载项被软禁用。
我站在他们旁边,因为他们启动 XL,进入 COM 加载项,检查加载项,然后单击“确定”。它加载(并且工作正常)没有错误。然后他们退出 XL,再次启动 XL,加载项再次被禁用。没有 "An add-in was causing issues dialog",没有错误,只是被禁用——如果您单击 COM 加载项中的加载项名称,加载行为中没有任何错误指示(只是 "Load at Startup")。他们重新启用并且在该会话中工作正常。
它是一部分人的事实让我相信这是他们机器上的一个设置(也许在信任中心?),但我还没有找到一个有罪的设置。所有用户都具有相同版本的 Windows,并且 应该 在同一更新上。
我的 Google 搜索发现很多行为不当或信任设置非常严格的加载项条目 -- 据我所知,这些类别都不适合。我发现一篇文章讨论了 Analysis Toolpak 的引导顺序,但是 none 的受帮助用户启用了 Toolpak。
由于没有显示任何错误(无论是来自加载项还是 Excel),我一直不知道为什么它会关闭(以及为什么它在 90% 的机)。
如果我能想到要在我的代码中查看什么(即使没有可见的错误)或要尝试进行哪些设置,我将不胜感激。
For the 10%, every time they boot Excel, the add-in is soft disabled.
加载项被自动禁用的原因有很多。
首先,我建议检查先决条件列表 - 它们是否都已正确安装(包括 .net 运行时)
然后我建议启用任何日志记录机制以查找在启动时触发的任何意外异常。
可能与 Office 应用程序中正在加载的其他加载项发生冲突。禁用除相关插件之外的所有其他插件,然后重试。
系统上的防病毒软件可能阻止加载项加载。 运行 防病毒软件的最新更新并重试。如果这没有帮助,请完全禁用防病毒程序并重试。有时防病毒软件还会安装额外的 Office 插件,您可能需要通过 运行 通过防病毒控制面板(设置)额外禁用这些插件。
Visual Studio Office 工具可以将启动期间发生的所有错误写入日志文件或在消息框中显示每个错误。默认情况下,这些选项对于应用程序级项目是关闭的。您可以通过添加和设置环境变量来打开这些选项。要在消息框中显示每个错误,请将 VSTO_SUPPRESSDISPLAYALERTS 变量设置为 0(零)。您可以通过将变量设置为 1(一)来抑制消息。要将错误写入日志文件,请将 VSTO_LOGALERTS 变量设置为 1(一)。 Visual Studio Office 工具在包含应用程序清单的文件夹中创建日志文件。默认名称为 .manifest.log。要停止记录错误,请将该变量设置为 0(零)。
在以下文章中详细了解可能存在的陷阱:
我有一个已签名的 VSTO vb.net 加载项加载到 Excel 2013 中。大约有 200 个用户,90% 没有问题。对于 10%,每次他们启动时 Excel,加载项被软禁用。
我站在他们旁边,因为他们启动 XL,进入 COM 加载项,检查加载项,然后单击“确定”。它加载(并且工作正常)没有错误。然后他们退出 XL,再次启动 XL,加载项再次被禁用。没有 "An add-in was causing issues dialog",没有错误,只是被禁用——如果您单击 COM 加载项中的加载项名称,加载行为中没有任何错误指示(只是 "Load at Startup")。他们重新启用并且在该会话中工作正常。
它是一部分人的事实让我相信这是他们机器上的一个设置(也许在信任中心?),但我还没有找到一个有罪的设置。所有用户都具有相同版本的 Windows,并且 应该 在同一更新上。
我的 Google 搜索发现很多行为不当或信任设置非常严格的加载项条目 -- 据我所知,这些类别都不适合。我发现一篇文章讨论了 Analysis Toolpak 的引导顺序,但是 none 的受帮助用户启用了 Toolpak。
由于没有显示任何错误(无论是来自加载项还是 Excel),我一直不知道为什么它会关闭(以及为什么它在 90% 的机)。
如果我能想到要在我的代码中查看什么(即使没有可见的错误)或要尝试进行哪些设置,我将不胜感激。
For the 10%, every time they boot Excel, the add-in is soft disabled.
加载项被自动禁用的原因有很多。
首先,我建议检查先决条件列表 - 它们是否都已正确安装(包括 .net 运行时)
然后我建议启用任何日志记录机制以查找在启动时触发的任何意外异常。
可能与 Office 应用程序中正在加载的其他加载项发生冲突。禁用除相关插件之外的所有其他插件,然后重试。
系统上的防病毒软件可能阻止加载项加载。 运行 防病毒软件的最新更新并重试。如果这没有帮助,请完全禁用防病毒程序并重试。有时防病毒软件还会安装额外的 Office 插件,您可能需要通过 运行 通过防病毒控制面板(设置)额外禁用这些插件。
Visual Studio Office 工具可以将启动期间发生的所有错误写入日志文件或在消息框中显示每个错误。默认情况下,这些选项对于应用程序级项目是关闭的。您可以通过添加和设置环境变量来打开这些选项。要在消息框中显示每个错误,请将 VSTO_SUPPRESSDISPLAYALERTS 变量设置为 0(零)。您可以通过将变量设置为 1(一)来抑制消息。要将错误写入日志文件,请将 VSTO_LOGALERTS 变量设置为 1(一)。 Visual Studio Office 工具在包含应用程序清单的文件夹中创建日志文件。默认名称为 .manifest.log。要停止记录错误,请将该变量设置为 0(零)。
在以下文章中详细了解可能存在的陷阱: