Ejemplo n.º 1
0
 private void FreeComObject(object comObject)
 {
     if (activate != null)
     {
         activate.ShutdownObject();
     }
     Marshal.ReleaseComObject(comObject);
 }
Ejemplo n.º 2
0
        public static void ShutdownObject(this IMFActivate obj, bool throwOnError = true)
        {
            if (obj == null)
            {
                throw new ArgumentNullException(nameof(obj));
            }

            obj.ShutdownObject().ThrowOnError(throwOnError);
        }
Ejemplo n.º 3
0
        //-------------------------------------------------------------------
        //  CloseDevice
        //
        //  Releases all resources held by this object.
        //-------------------------------------------------------------------

        public virtual int CloseDevice()
        {
            lock (LockSync)
            {
                SafeRelease(PReader);
                PReader = null;
                pActivate?.ShutdownObject();
                pActivate        = null;
                PwszSymbolicLink = null;
                Draw.DrawNullFrame();
            }
            return(S_Ok);
        }