// Disconnect from ActiveX event source
 void Disconnect()
 {
   System.Threading.Monitor.Enter(this);
   try {
     if (EventSinkHelper != null)
       ConnectionPoint.Unadvise(EventSinkHelper.Cookie);
     ConnectionPoint = null;
     EventSinkHelper = null;
   } catch { }
   System.Threading.Monitor.Exit(this);
 }
 // Connect to ActiveX event source
 void Connect()
 {
   if (ConnectionPoint == null)
   {
     ConnectionCount = 0;
     Guid g = new Guid("D27CDB6D-AE6D-11CF-96B8-444553540000");
     ConnectionPointContainer.FindConnectionPoint(ref g, out ConnectionPoint);
     EventSinkHelper = new _IShockwaveFlashEvents_SinkHelper();
     ConnectionPoint.Advise(EventSinkHelper, out EventSinkHelper.Cookie);
   }
 }