示例#1
0
 public WsApplication(object application, bool initializeEvents = true)
 {
     _application = (Application) application;
     if (initializeEvents)
     {
         ApplicationEvents = _application;
         ApplicationEvents.MAPILogonComplete += OnMapiLogonComplete;
     }
 }
示例#2
0
        public void Dispose()
        {
            if (ApplicationEvents != null)
            {
                ApplicationEvents.MAPILogonComplete -= OnMapiLogonComplete;
                
                ApplicationEvents = null;
            }

            if (_wsSession != null)
            {
                _wsSession.Dispose();
                _wsSession = null;
            }

            if (_application != null)
            {
                Marshal.ReleaseComObject(_application);
                _application = null;
            }
        }