如何以编程方式加载/卸载Word加载项?

时间:2013-08-27 15:38:47

标签: c# .net ms-word vsto add-in

我想知道如何在Word中以编程方式加载和卸载VSTO加载项。我正在使用Word 2007和VS2010与C#。

我认为使用Microsoft.Office.Interop.Word.COMAddins和.Addins属性可能会有运气,但.Addins属性给出一个空列表,COMAddins是不透明COM对象的集合。

alternative question建议使功能区菜单不可见,但实际上我想完全卸载加载项。

1 个答案:

答案 0 :(得分:2)

我有类似的要求,并通过一点点欺骗来实现。

我有一个名为AddinLauncher的插件(没有色带),它会查找用户类型并启动或关闭其他插件。

此代码在AddinLauncher Addin Startup事件期间调用。

foreach (COMAddIn addin in Globals.ThisAddin.Application.COMAddins)
{
  if (**specify your own condition**)
    {
        addin.Connect = true;
    }                       
}

部署中需要进​​行以下更改

AddinLaucher插件的Loadbehaviour为3,其他所有插件均为0。 有关Loadbehaviour的更多信息here