private void Dispose(bool disposing) { if (!_disposed) { InternalDacPrivateInterface?.Dispose(); _sos?.Dispose(); OwningLibrary?.Release(); _disposed = true; } }
public T GetInterface <T>(ref Guid riid) where T : CallableCOMWrapper { IntPtr pUnknown = InternalDacPrivateInterface.QueryInterface(ref riid); if (pUnknown == IntPtr.Zero) { return(null); } T t = (T)Activator.CreateInstance(typeof(T), this, pUnknown); return(t); }