扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
如上图所示,其中多了一个Shared Add-in Support Update for Microsoft .NET Framework 2.0 (KB908002)
问题3 如何制作兼容多个版本Office的Office Addin
通常情况下,我们编写的Add-in都是直接用向导生成的,且使用的是早期绑定技术(early binding)。但在许多需求中,我们需要制作一个能够兼容多个Office版本的Add-in,这时我们就不能使用早期绑定了,而应该使用后期绑定(late binding)。关于早期绑定和后期绑定的详细信息,请见http://word.mvps.org/FAQs/InterDev/EarlyvsLateBinding.htm
问题4 通常Addin设置保存在注册表的什么位置
以Office 2003 Word Add-in为例,通常会保存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Word\Addins中。
假设我们有一个名字为MyAddin1的Addin,那么它就会保存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Word\Addins\MyAddin1.Connect中。
对于Excel Add-in来说,也是类似的,通常保存在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\Excel\Addins中,依此类推。
在每个Add-in的设置属性中有一个重要的标志LoadBehavior,这个属性是保存在XXXX.Connect中的,类型为DWORD,这个值直接决定了Addin的启动模式,默认值为3表示Office应用程序一启动就运行,这个设置与我们在Addin向导中选择的"I would like my Add-in to load when the host application loads"是对应的。
问题5 当确定你的Add-in应该可以正确加载,但在启动时没有加载,这是怎么回事
如果一个Add-in因为某些原因在启动时加载失败,Office应用程序会自动把LoadBehavior改成8,这表示仅在需要加载时才加载该Add-in,而不是在Office启动时。所以这时可以到与该Add-in对应的注册表项中检查一下LoadBehavior值是否正确,如果为8,一定把它改成3。
问题6 你不确定Add-in的哪一部分出了问题,该如何调试
首先必须确定assembly的引用没有出现问题,关于如何检测引用出错的情况已经在问题1中说明。
接下来我们就要检查OnConnection是否被调用,我们可以在OnConnection中加入一句调试语句,如下
如果OnConnection加载成功,那么肯定会弹出一个对话框,否则就要考虑检查一下是不是设置的问题,如是不是LoadBehavior的值不正确。(见问题5)
接下来的调试也是类似的,通过加入MessageBox.Show或其他调试语句来检查代码是否已运行到某个位置。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者