如何在按钮单击时以编程方式在Word中加载和卸载VSTO加载项。
我已使用以下代码在事件点击中卸载它。
foreach (Office.COMAddIn addin in Globals.ThisAddIn.Application.COMAddIns)
{
if (addin.ProgId == "DocDrafter")
{
addin.Connect = false;
return;
}
}
但是在文档更改和文档启动时,我必须再次加载加载项。
但是一旦卸载了addin,我就无法再次加载它。
答案 0 :(得分:1)
你有几种可能性 - 这取决于你想要做什么。首先,您应该(已)阅读AddIns
集合和Addin
对象的Word对象模型帮助中的信息。 (我们正在讨论用于VSTO项目的Globals.ThisAddIn.Application.Addin /。)
基本上有两种方法。一种是使用Installed
对象的Addin
属性,该对象从Word UI加载(=true
)/卸载(=false
)加载项,将其保留在加载项列表(Word的文件/选项/加载项选项卡中的列表),以便用户(或您的代码)可以根据需要再次加载它。听起来这就是你所需要的。
另一种方法是从该列表中删除/添加加载项。使用Addin.Delete
方法删除加载项;使用Addins.Add
向列表中添加加载项。
如果您从VSTO项目中断开加载项,就像您的代码那样,我认为VSTO范围内的任何方式都不会让您再次连接它...... / p>
文档中的帮助主题:从这里开始:https://msdn.microsoft.com/en-us/vba/word-vba/articles/addins-add-method-word