/// <summary> /// Removes an event handler from the COM object. /// </summary> /// <param name="eventName"> /// The name of the event. /// </param> /// <param name="handler"> /// The event handler delegate. /// </param> /// <exception cref="ArgumentNullException"> /// <para><paramref name="eventName"/> is <see langword="null"/></para> /// <para>-or-</para> /// <para><paramref name="handler"/> is <see langword="null"/></para> /// </exception> private void RemoveEventHandler(string eventName, Delegate handler) { if (null == eventName || 0 == eventName.Length) throw new ArgumentNullException("eventName"); if (null == handler) throw new ArgumentNullException("handler"); lock(this) { if (null == _ComEventProvider) return; _ComEventProvider.RemoveEventHandler(eventName, handler); } }