SafeNCryptHandle 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供可被 Cryptography Next Generation (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
- 繼承
- 繼承
- 衍生
- 屬性
備註
這個類別會包裝邏輯,以正確複製並釋放這些句柄,以模擬原生重複。
每個開啟的句柄物件都可以視為處於三種狀態之一:
- 擁有者 - 透過封送處理器、傳統樣式安全句柄建立。 值得注意的是,給定原生句柄只有一個擁有者句柄存在。
- 重複 - 指向佔位元狀態的句柄。 釋放重複狀態的句柄,只會遞減持有者的參考計數,而不是在原生句柄的釋放中。
- 持有者 - 保留至原生句柄,且由處於重複狀態的句柄所參考。 關閉所有重複句柄時,持有者句柄會釋放原生句柄。 持有者句柄永遠不會完成,因為這會導致重複句柄的完成項與持有者句柄之間的競爭。 相反地,它會依賴所有重複句柄來完成,並將 ref 計數遞減為零。 持有者句柄的實例絕對不能被重複句柄以外的任何項目參考。
建構函式
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 類別所使用的 Unmanaged 資源,指定是否要執行一般處置作業。 (繼承來源 SafeHandle) |
Equals(Object) |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 建立目前 Object 的淺層複製。 (繼承來源 Object) |
ReleaseHandle() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 釋放 Cryptography Next Generation (CNG) 物件使用的控制代碼。 |
ReleaseNativeHandle() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 釋放 Cryptography Next Generation (CNG) 物件使用的原生控制代碼。 |
SetHandle(IntPtr) |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 將控制代碼設定為指定的既有控制代碼。 (繼承來源 SafeHandle) |
SetHandleAsInvalid() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 將控制代碼標記為不再使用。 (繼承來源 SafeHandle) |
ToString() |
此 API 支援此產品基礎結構,但無法直接用於程式碼之中。 傳回代表目前物件的字串。 (繼承來源 Object) |