在进行Outlook插件的开发的时候,不可避免的需要获取Application.Session等对象。但是当Outlook与Exchange没有进行连接时获取诸如CurrentUser、Sender等对象时会出现假死状态,为了解决此类问题,我们就需要在进行操作之前获取当前Outlook是否与Exchange正常连接。
方法如下:
public bool CheckExchangeOfflineThread()
{
bool bResult = false;
switch (Globals.ThisAddIn.Application.Session.ExchangeConnectionMode)
{
case Outlook.OlExchangeConnectionMode.olNoExchange:
bResult = false;
break;
case Outlook.OlExchangeConnectionMode.olCachedOffline:
bResult = false;
break;
case Outlook.OlExchangeConnectionMode.olOffline:
bResult = false;
break;
case Outlook.OlExchangeConnectionMode.olCachedDisconnected:
bResult = false;
break;
default:
bResult = true;
break;
}
return bResult;
}
通过以上方法即可获取当前Outlook与Exchange的连接状态。
Outlook开发交流群:365895439