Microsoft.Win32.SafeHandles Namespace

The Microsoft.Win32.SafeHandles namespace contains classes that are abstract derivations of safe handle classes that provide common functionality supporting file and operating system handles.

Classes

CriticalHandleMinusOneIsInvalid

Provides a base class for Win32 critical handle implementations in which the value of -1 indicates an invalid handle.

CriticalHandleZeroOrMinusOneIsInvalid

Provides a base class for Win32 critical handle implementations in which the value of either 0 or -1 indicates an invalid handle.

SafeAccessTokenHandle

Provides a safe handle to a Windows thread or process access token. For more information see Access Tokens

SafeFileHandle

Represents a wrapper class for a file handle.

SafeHandleMinusOneIsInvalid

Provides a base class for Win32 safe handle implementations in which the value of -1 indicates an invalid handle.

SafeHandleZeroOrMinusOneIsInvalid

Provides a base class for Win32 safe handle implementations in which the value of either 0 or -1 indicates an invalid handle.

SafeMemoryMappedFileHandle

Provides a safe handle that represents a memory-mapped file for sequential access.

SafeMemoryMappedViewHandle

Provides a safe handle that represents a view of a block of unmanaged memory for random access.

SafeNCryptHandle

Provides a safe handle that can be used by Cryptography Next Generation (CNG) objects.

SafeNCryptKeyHandle

Provides a safe handle that represents a key (NCRYPT_KEY_HANDLE).

SafeNCryptProviderHandle

Provides a safe handle that represents a key storage provider (NCRYPT_PROV_HANDLE).

SafeNCryptSecretHandle

Provides a safe handle that represents a secret agreement value (NCRYPT_SECRET_HANDLE).

SafePipeHandle

Represents a wrapper class for a pipe handle.

SafeProcessHandle

Provides a managed wrapper for a process handle.

SafeRegistryHandle

Represents a safe handle to the Windows registry.

SafeWaitHandle

Represents a wrapper class for a wait handle.

SafeX509ChainHandle

Provides a wrapper class that represents the handle of an X.509 chain object. For more information, see X509Chain.

Remarks

These classes are derived from the System.Runtime.InteropServices.SafeHandle and System.Runtime.InteropServices.CriticalHandle classes.