C# Outlook加载项重新加载
我正在尝试重新加载加载项以处理自己的更新运行时(使用click once部署API,但提供silend更新) 但我在重新加载加载项时遇到了麻烦。我当前的任务只是简单的卸载和重新加载加载项。我的发现与此类似: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
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;