SafeHandle Class

Microsoft Silverlight will reach end of support after October 2021. Learn more.

This type can be used only by trusted applications. If you try to use its members in a partial-trust application, your code will throw a MethodAccessException exception. This type is security-critical, which restricts its use.

[SECURITY CRITICAL]

Represents a wrapper class for operating system handles. This class must be inherited.

Inheritance Hierarchy

System.Object
  System.Runtime.ConstrainedExecution.CriticalFinalizerObject
    System.Runtime.InteropServices.SafeHandle

Namespace:  System.Runtime.InteropServices
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
<SecurityCriticalAttribute> _
Public MustInherit Class SafeHandle _
    Inherits CriticalFinalizerObject _
    Implements IDisposable
[SecurityCriticalAttribute]
public abstract class SafeHandle : CriticalFinalizerObject, 
    IDisposable

The SafeHandle type exposes the following members.

Constructors

  Name Description
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 SafeHandle() Initializes a new instance of the SafeHandle class using system defaults.
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 SafeHandle(IntPtr, Boolean) Initializes a new instance of the SafeHandle class with the specified invalid handle value.

Top

Properties

  Name Description
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360 IsClosed Gets a value indicating whether the handle is closed.
Public propertySupported by Silverlight for Windows PhoneSupported by Xbox 360 IsInvalid When overridden in a derived class, gets a value indicating whether the handle value is invalid.

Top

Methods

  Name Description
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 Close Security Critical. Marks the handle for releasing and freeing resources.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 DangerousAddRef Security Critical. Manually increments the reference counter on SafeHandle instances.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 DangerousGetHandle Returns the value of the handle field.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 DangerousRelease Security Critical. Manually decrements the reference counter on a SafeHandle instance.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 Dispose() Releases all resources used by the SafeHandle class.
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 Dispose(Boolean) Security Critical. Releases the unmanaged resources used by the SafeHandle class specifying whether to perform a normal dispose operation.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 Equals(Object) Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 Finalize Frees all resources associated with the handle. (Overrides CriticalFinalizerObject.Finalize().)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 GetHashCode Serves as a hash function for a particular type. (Inherited from Object.)
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 GetType Gets the Type of the current instance. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 ReleaseHandle When overridden in a derived class, executes the code required to free the handle.
Protected methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 SetHandle Sets the handle to the specified pre-existing handle.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 SetHandleAsInvalid Security Critical. Marks a handle as no longer used.
Public methodSupported by Silverlight for Windows PhoneSupported by Xbox 360 ToString Returns a string that represents the current object. (Inherited from Object.)

Top

Fields

  Name Description
Protected fieldSupported by Silverlight for Windows PhoneSupported by Xbox 360 handle Specifies the handle to be wrapped.

Top

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.