SafeRegistryHandle
using System;
using System.Runtime.InteropServices;
namespace Microsoft.Win32.SafeHandles
{
public sealed class SafeRegistryHandle : SafeHandle
{
public override bool IsInvalid {
get {
if (!(handle == IntPtr.Zero))
return handle == new IntPtr(-1);
return true;
}
}
internal SafeRegistryHandle()
: base(IntPtr.Zero, true)
{
}
public SafeRegistryHandle(IntPtr preexistingHandle, bool ownsHandle)
: base(IntPtr.Zero, ownsHandle)
{
SetHandle(preexistingHandle);
}
protected override bool ReleaseHandle()
{
return true;
}
}
}