dotnet-core/release-notes/1.0/1.0.0-api/1.0.0-api_Microsoft.Win32.SafeHandles.md
2017-07-05 14:24:38 -07:00

2.9 KiB

Microsoft.Win32.SafeHandles

+namespace Microsoft.Win32.SafeHandles {
+    public sealed class SafeAccessTokenHandle : SafeHandle {
+        public SafeAccessTokenHandle(IntPtr handle);
+        public static SafeAccessTokenHandle InvalidHandle { get; }
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public sealed class SafeFileHandle : SafeHandle {
+        public SafeFileHandle(IntPtr preexistingHandle, bool ownsHandle);
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public abstract class SafeHandleZeroOrMinusOneIsInvalid : SafeHandle {
+        public override bool IsInvalid { get; }
+    }
+    public sealed class SafeMemoryMappedFileHandle : SafeHandle {
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public sealed class SafeMemoryMappedViewHandle : SafeBuffer {
+        protected override bool ReleaseHandle();
+    }
+    public abstract class SafeNCryptHandle : SafeHandle {
+        protected SafeNCryptHandle();
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+        protected abstract bool ReleaseNativeHandle();
+    }
+    public sealed class SafeNCryptKeyHandle : SafeNCryptHandle {
+        public SafeNCryptKeyHandle();
+        protected override bool ReleaseNativeHandle();
+    }
+    public sealed class SafeNCryptProviderHandle : SafeNCryptHandle {
+        public SafeNCryptProviderHandle();
+        protected override bool ReleaseNativeHandle();
+    }
+    public sealed class SafeNCryptSecretHandle : SafeNCryptHandle {
+        public SafeNCryptSecretHandle();
+        protected override bool ReleaseNativeHandle();
+    }
+    public sealed class SafePipeHandle : SafeHandle {
+        public SafePipeHandle(IntPtr preexistingHandle, bool ownsHandle);
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public sealed class SafeProcessHandle : SafeHandle {
+        public SafeProcessHandle(IntPtr existingHandle, bool ownsHandle);
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public sealed class SafeRegistryHandle : SafeHandle {
+        public SafeRegistryHandle(IntPtr preexistingHandle, bool ownsHandle);
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public sealed class SafeWaitHandle : SafeHandle {
+        public SafeWaitHandle(IntPtr existingHandle, bool ownsHandle);
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+    public sealed class SafeX509ChainHandle : SafeHandle {
+        public override bool IsInvalid { get; }
+        protected override bool ReleaseHandle();
+    }
+}