SafeNCryptHandle 类

定义

提供了可被下一代加密技术 (CNG) 对象使用的安全句柄。

此 API 支持产品基础结构,不能在代码中直接使用。

public ref class SafeNCryptHandle abstract : Microsoft::Win32::SafeHandles::SafeHandleZeroOrMinusOneIsInvalid
public ref class SafeNCryptHandle abstract : System::Runtime::InteropServices::SafeHandle
public abstract class SafeNCryptHandle : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
public abstract class SafeNCryptHandle : System.Runtime.InteropServices.SafeHandle
[System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)]
public abstract class SafeNCryptHandle : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
type SafeNCryptHandle = class
    inherit SafeHandleZeroOrMinusOneIsInvalid
type SafeNCryptHandle = class
    inherit SafeHandle
[<System.Security.SecurityCritical(System.Security.SecurityCriticalScope.Everything)>]
type SafeNCryptHandle = class
    inherit SafeHandleZeroOrMinusOneIsInvalid
Public MustInherit Class SafeNCryptHandle
Inherits SafeHandleZeroOrMinusOneIsInvalid
Public MustInherit Class SafeNCryptHandle
Inherits SafeHandle
继承
继承
SafeNCryptHandle
派生
属性

注解

此类对逻辑进行总结,以便正确复制并释放这些句柄以模拟本机重复。

每个打开的句柄对象可视为处于以下三种状态之一:

  • 所有者 - 通过封送处理程序(传统样式的安全句柄)创建。 值得注意的是,给定的本机句柄只存在一个所有者句柄。
  • 重复 - 指向处于持有者状态的句柄。 释放处于重复状态的句柄只会减少持有者的引用计数,而不是在释放本机句柄时减少。
  • 持有者 - 保留本机句柄,并由处于重复状态的句柄引用。 当关闭所有重复句柄时,持有者句柄将释放本机句柄。 持有者句柄永远不会最终确定,因为这会导致重复句柄的终结器与持有者句柄之间的争用。 相反,它依赖于要完成的所有重复句柄,并将引用计数减为零。 持有者句柄的实例不应被重复句柄引用。

构造函数

SafeNCryptHandle()

此 API 支持产品基础结构,不能在代码中直接使用。

初始化 SafeNCryptHandle 类的新实例。

SafeNCryptHandle(IntPtr, SafeHandle)

此 API 支持产品基础结构,不能在代码中直接使用。

实例化 SafeNCryptHandle 类的新实例。

字段

handle

此 API 支持产品基础结构,不能在代码中直接使用。

指定要包装的句柄。

(继承自 SafeHandle)

属性

IsClosed

此 API 支持产品基础结构,不能在代码中直接使用。

获取一个值,该值指示句柄是否已关闭。

(继承自 SafeHandle)
IsInvalid

此 API 支持产品基础结构,不能在代码中直接使用。

获取一个值,该值指示句柄是否无效。

IsInvalid

此 API 支持产品基础结构,不能在代码中直接使用。

获取一个值,该值指示句柄是否无效。

(继承自 SafeHandleZeroOrMinusOneIsInvalid)

方法

Close()

此 API 支持产品基础结构,不能在代码中直接使用。

标记句柄,以便释放资源。

(继承自 SafeHandle)
DangerousAddRef(Boolean)

此 API 支持产品基础结构,不能在代码中直接使用。

手动递增 SafeHandle 实例中的引用计数器。

(继承自 SafeHandle)
DangerousGetHandle()

此 API 支持产品基础结构,不能在代码中直接使用。

返回 handle 字段的值。

(继承自 SafeHandle)
DangerousRelease()

此 API 支持产品基础结构,不能在代码中直接使用。

手动递减 SafeHandle 实例中的引用计数器。

(继承自 SafeHandle)
Dispose()

此 API 支持产品基础结构,不能在代码中直接使用。

释放 SafeHandle 类使用的所有资源。

(继承自 SafeHandle)
Dispose(Boolean)

此 API 支持产品基础结构,不能在代码中直接使用。

释放 SafeHandle 类所使用的非托管资源,指定是否执行常规释放操作。

(继承自 SafeHandle)
Equals(Object)

此 API 支持产品基础结构,不能在代码中直接使用。

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

此 API 支持产品基础结构,不能在代码中直接使用。

作为默认哈希函数。

(继承自 Object)
GetType()

此 API 支持产品基础结构,不能在代码中直接使用。

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

此 API 支持产品基础结构,不能在代码中直接使用。

创建当前 Object 的浅表副本。

(继承自 Object)
ReleaseHandle()

此 API 支持产品基础结构,不能在代码中直接使用。

释放由下一代加密技术 (CNG) 对象使用的句柄。

ReleaseNativeHandle()

此 API 支持产品基础结构,不能在代码中直接使用。

释放由下一代加密技术 (CNG) 对象使用的本机句柄。

SetHandle(IntPtr)

此 API 支持产品基础结构,不能在代码中直接使用。

将句柄设置为预先存在的指定句柄。

(继承自 SafeHandle)
SetHandleAsInvalid()

此 API 支持产品基础结构,不能在代码中直接使用。

将句柄标记为不再使用。

(继承自 SafeHandle)
ToString()

此 API 支持产品基础结构,不能在代码中直接使用。

返回表示当前对象的字符串。

(继承自 Object)

适用于