我有一个Visio 2007加载项,它在Windows 7上运行良好,但在Windows 10上运行时不加载相同的加载项。在Visio的信任中心,加载项显示为“非活动”在Windows 10上。加载项进入注册表,但一旦Visio启动,LoadBehavior就会从3更改为2。我理解这意味着当Visio尝试加载加载项时出现运行时错误。
此加载项是用C#编写的,Visual Studio 2012.安装了VSTO 2010(自动信任中心接受所需)。也许如果我能找出运行时错误是什么,我可以取得进展。如何找到有关此运行时错误的更多信息?加载项代码中的任何位置都不会出现断点,包括InternalStartup()。在运行加载项代码之前似乎失败了。我设置了Fusion日志记录,但没有找到与Visio或加载项相关的消息,我不确定这甚至是解决此问题的相关工具。我还设置了系统环境变量VSTO_LOGALERTS = 1和VSTO_SUPPRESSDISPLAYALERTS = 0但我没有看到任何警报或日志。
另一位开发人员能够从Visual Studio 2012在Windows 10上运行此加载项,但我们无法确定该计算机与我的计算机之间的区别。其他几台Windows 10计算机无法运行此加载项,因为它始终处于非活动状态(LoadBehavior = 2)。目标是在Windows 10上部署此加载项,就像它已经部署在Windows 7上一样。
答案 0 :(得分:0)
我发现AddInSpy很有帮助,但它没有直接指出问题。 https://github.com/NetOfficeFw/AddInSpy
它向我显示了我的加载项的错误消息: “找不到加载项DLL路径” 但这不是实际问题。 (加载项的路径是有效的。)有一个不同的问题导致加载项无法加载,这导致AddInSpy中的这种有些误导性的消息。
AddInSpy还显示了正在使用的VSTOR版本= 2008.在搜索VSTOR时,我发现许多版本都适用于.NET 3.5。我的Windows 10机器没有安装.NET 3.5。安装.NET 3.5后,加载项工作正常!
总结一下:AddInSpy帮助(间接)发现加载项未加载,因为我的Windows 10计算机上没有安装.NET 3.5。