SafeNCryptHandle.ReleaseHandle Method

Definition

Releases a handle used by a Cryptography Next Generation (CNG) object.

This API supports the product infrastructure and is not intended to be used directly from your code.

C#
protected override bool ReleaseHandle();

Returns

true if the handle is released successfully; otherwise, false.

Remarks

Similar to duplication, releasing a handle performs different operations based upon the state of the handle.

An instance that was constructed with a parentHandle value will only call DangerousRelease on the parentHandle object. Otherwise, the behavior is dictated by the ownership state.

  • Owner - Simply calls the release P/Invoke method.
  • Duplicate - Decrements the reference count of the current holder.
  • Holder - Calls the release P/Invoke. Note that ReleaseHandle on a holder implies a reference count of zero.

Applies to

Product Versions
.NET Core 1.0, Core 1.1, 6, 7, 8, 9
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided), 2.1 (package-provided)
Windows Desktop 3.0, 3.1, 5