小编Dan*_*Dan的帖子

在此之前确定VSTO 4中的Office版本.应用程序已设置

我想在Addin CreateRibbonExtensibilityObject()上调用VSTO Addin中的Office/Excel版本.我遇到过这个问题,遇到过:

  • 添加的this.Applicationnull,目前尚未由VSTO设置.
  • 在之后ThisAddIn_Startup(..)被称为CreateRibbonExtensibilityObject().

this.Application.Version尚未提供,因为此时Addin似乎尚未初始化.有没有办法在VSTO运行时调用Addin 时确定Excel(12,14或15)的版本CreateRibbonExtensibilityObject()

UPDATE

发现ItemProvider已实例化,我使用以下内容获取主要的Office版本.

FieldInfo temp = this.ItemProvider.GetType().GetField("_officeVersion", BindingFlags.NonPublic | BindingFlags.Instance);
uint officeVersion = (uint)temp.GetValue(this.ItemProvider);
Run Code Online (Sandbox Code Playgroud)

我也接受了SliverNinja的回答.

excel vsto ribbon office-interop c#-4.0

5
推荐指数
1
解决办法
1898
查看次数

异步等待定位4.0部署要求

Microsoft已更新.net 4.0的异步/等待目标,现在建议使用nuget上提供的Microsoft.Bcl.Async库.

在发行说明中,它声明需要具有KB 2468871的 .net 4 .

  1. KB2468871是构建要求还是部署要求?
  2. KB2468871的哪些方面需要它?

.net .net-4.0 targeting async-await c#-5.0

5
推荐指数
1
解决办法
1175
查看次数