清单中添加Excel API 1.2的需求集时,Office Excel Addin无法在Excel 2013中加载

使用Excel API 1.2的Excel插件。 Excel 2016 for Windows和Excel在线加载项加载正常。 从Excel在线保存文件并在Excel 2013中打开,外挂程序无法在Excel 2013中加载,但出现以下错误:

加载Store中发布的Addin时:

APP ERROR We can't load this app because we could not connect to catalog

当从可信目录中加载插件时:

This app could not be started. Close this dialog to ignore the problem or click restart to try again

我知道Excel 2013不支持Excel API 1.2。 您能否确认推荐的方法来确保Excel 2013中的加载项加载?

我们应该使用isSetSupported方法使用运行时检查吗?

?在这种情况下,如何在Excel 2013客户端中debugging哪些代码行失败?

是否有可以启用Excel客户端中的这种问题进行疑难解答的日志logging?

我试着debugging一个由VS 2015创build的默认加载项,该加载项在Excel 2013中使用Excel 1.2 API。我添加了以下对Manifest的设置:

 <Requirements> <Sets DefaultMinVersion="1.2"> <Set Name="ExcelApi" /> </Sets> </Requirements> 

在使用VS 2015进行debugging时,插件也无法在Excel(15.0.4849.1003)中加载。在Excel 2016客户端中,它可以正常工作。

我认为这里有两个不同的问题(虽然他们很有可能是相关的,而且平台只是给出了错误的错误string,如果是的话,让我们来确认,然后我可以提交一个错误,让我们修复这个问题) 。

Excel 2013不支持“ExcelApi”需求集,这是2016年添加的特定于主机的API(同样适用于“WordApi”)。 如果您在清单的requirements部分中指定了ExcelApi,则如上所述,在devise中 ,这总是无法在Excel 2013中加载。 从本质上讲,您正在请求一个API集并将其标记为Excel 2013不支持的某些内容的“必需”,因此,它别无select,只能拒绝运行它。

这是运行时检查(isSetSupported)进来的地方。请参阅我的答案在整洁的方式来获取环境(即Office版本)的更多细节。

我不确定你的意思是“如何debugging哪一行代码失败”或疑难解答技术。 从本质上讲,从2013年开始任何对Office 2016 API( ExcelApi集合中的任何内容)的调用都将导致运行时失败。

希望这可以帮助!