我创建了我的第一个Excel VSTO加载项。在Visual Studio中一切正常。我发布了我的加载项,安装在其他计算机上,但是Excel在加载过程中崩溃了。仅显示没有响应的对话框。
VSTO_SUPPRESSDISPLAYALERTS
设置为0->未显示警报VSTO_LOGALERTS
设置为1->无日志VSTO_LOGALERTS
有效,但不适用于我的情况应用程序:EXCEL.EXE 框架版本:v4.0.30319 说明:由于未处理的异常,进程已终止。 异常信息:System.NullReferenceException 在Microsoft.Office.Tools.Ribbon.RibbonBase.Dispose(布尔) 在ExcelTE.RibbonTE.Dispose(布尔) 在System.ComponentModel.Component.Finalize()
在先决条件中,我已经检查了以下选项:
我还尝试为Office运行时手动安装.NET Framework 4.7.2和Visual Studio Tools,但没有成功。
还有什么我可以检查的想法吗?
答案 0 :(得分:0)
我找到了解决此问题的方法。
System.NullReferenceException
对此有点误导。
我创建了一个项目,然后添加:
我在事件处理程序中有自定义逻辑,它使用的是3rd party库。该库要求用户文档中具有Resources / someSettingsFile.settings文件夹。
创建MyRibbon类时,我正在从第三方库初始化对象。因此,这会在加载excel时引发异常。
我忘记了在开发过程中将Resources文件夹复制到Documents,而当我将Add-In发布给其他用户时,他们根本没有第3库所需的文件。