C# Outlook加载项重新加载

C# Outlook加载项重新加载,c#,outlook-addin,outlook-2010,C#,Outlook Addin,Outlook 2010,我正在尝试重新加载加载项以处理自己的更新运行时(使用click once部署API,但提供silend更新) 但我在重新加载加载项时遇到了麻烦。我当前的任务只是简单的卸载和重新加载加载项。我的发现与此类似: private void Reload() { try { COMAddIns comAddIns = Globals.ThisAddIn.Application.COMAddIns; COMAddIn

我正在尝试重新加载加载项以处理自己的更新运行时(使用click once部署API,但提供silend更新)

但我在重新加载加载项时遇到了麻烦。我当前的任务只是简单的卸载和重新加载加载项。我的发现与此类似:

private void Reload()
    {
        try
        {
            COMAddIns comAddIns = Globals.ThisAddIn.Application.COMAddIns;
            COMAddIn addIn =
                comAddIns.Cast<COMAddIn>().FirstOrDefault(addin => string.Equals(addin.Description, "OutlookAddIn1", StringComparison.OrdinalIgnoreCase));

            if (addIn != null)
            {
                addIn.Connect = false;
                addIn.Connect = true;
            }
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }
我试着把它放在附加的try/catch块中,但它不起作用。打电话的时候
Connect=false
我有
ThreadAbortException
,我无法阻止这种情况发生


我会简单地从代码中禁用和启用外接程序,目前我无法实现。

AFAIK这是不可能的,因为
Connect=false
告诉宿主运行时丢弃线程。。。您可以提供2个加载项(真实的一个加载项和一个严格只处理更新的第二个加载项,例如,每个加载项可以处理另一个加载项的更新)

addIn.Connect = false;