private void OnAdviseReceived(object sender, DdemlAdviseEventArgs internalArgs)
        {
            EventHandler<DdeAdviseEventArgs> copy;

            // To make this thread-safe we need to hold a local copy of the reference to the invocation list.  This works because delegates are
            //immutable.
            lock (_LockObject)
            {
                copy = _AdviseEvent;
            }

            if (copy != null)
            {
                copy(this, new DdeAdviseEventArgs(internalArgs, Context.Encoding));
            }
        }
 internal DdeAdviseEventArgs(DdemlAdviseEventArgs args, Encoding encoding)
 {
     _DdemlObject = args;
     _Encoding = encoding;
 }