SafeNCryptHandle クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
CNG (Cryptography Next Generation) オブジェクトで使用できるセーフ ハンドルを提供します。
この 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
- 継承
- 継承
- 継承
- 派生
- 属性
注釈
このクラスは、これらのハンドルを正しく複製して解放するロジックをラップして、ネイティブの重複をシミュレートします。
開いている各ハンドル オブジェクトは、次の 3 つの状態のいずれかであると考えることができます。
- 所有者 - マーシャラーを介して作成された、従来のスタイルのセーフ ハンドル。 特に、特定のネイティブ ハンドルに対して存在する所有者ハンドルは 1 つだけです。
- 複製 - ホルダー状態のハンドルをポイントします。 重複状態のハンドルを解放すると、ネイティブ ハンドルのリリースではなく、ホルダーの参照カウントがデクリメントされるだけです。
- ホルダー - ネイティブ ハンドルを保持し、重複状態のハンドルによって参照されます。 重複するすべてのハンドルが閉じられると、ホルダー ハンドルによってネイティブ ハンドルが解放されます。 この結果、重複するハンドルのファイナライザーとホルダー ハンドルの間で競合が生じるため、ホルダー ハンドルはファイナライズされません。 代わりに、すべての重複するハンドルを最終処理し、ref カウントを 0 にデクリメントします。 ホルダー ハンドルのインスタンスは、重複するハンドル以外では参照しないでください。
コンストラクター
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 (Cryptography Next Generation) オブジェクトで使用されるハンドルを解放します。 |
ReleaseNativeHandle() |
この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。 CNG (Cryptography Next Generation) オブジェクトで使用されるネイティブ ハンドルを解放します。 |
SetHandle(IntPtr) |
この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。 ハンドルを指定した既存のハンドルに設定します。 (継承元 SafeHandle) |
SetHandleAsInvalid() |
この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。 今後は使用しないものとしてハンドルをマークします。 (継承元 SafeHandle) |
ToString() |
この API は製品インフラストラクチャをサポートします。コードから直接使用するものではありません。 現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
適用対象
.NET
フィードバック
https://aka.ms/ContentUserFeedback.
Coming soon: Throughout 2024 we will be phasing out GitHub Issues as the feedback mechanism for content and replacing it with a new feedback system. For more information see:フィードバックの送信と表示