SecureString Constructor (Char*, Int32)

 

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

Initializes a new instance of the SecureString class from a subarray of System.Char objects.

This constructor is not CLS-compliant. The CLS-compliant alternative is SecureString.SecureString().

This API is not CLS-compliant.

Namespace:   System.Security
Assembly:  mscorlib (in mscorlib.dll)

[SecurityCriticalAttribute]
[CLSCompliantAttribute(false)]
public unsafe SecureString(
	char* value,
	int length
)

Parameters

value
Type: System.Char*

A pointer to an array of System.Char objects.

length
Type: System.Int32

The number of elements of value to include in the new instance.

Exception Condition
ArgumentNullException

value is null.

ArgumentOutOfRangeException

length is less than zero or greater than 65,536.

CryptographicException

An error occurred while protecting or unprotecting the value of this secure string.

NotSupportedException

This operation is not supported on this platform.

This constructor initializes the new SecureString object to the number of characters in value specified by length; the value of the instance is then encrypted.

In C#, this constructor is defined only in the context of unsafe code.

Win2kFamily

SecureString is only supported on Windows 2000 Service Pack 3 and later.

The following example instantiates a new SecureString object by passing its constructor a pointer to a character array.

using System;
using System.Security;

public class Example
{
   unsafe public static void Main()
   {
      SecureString testString;
      // Define the string value to assign to a new secure string.
      char[] chars = { 't', 'e', 's', 't' };

      // Instantiate a new secure string.
      fixed(char* pChars = chars)
      {
         testString = new SecureString(pChars, chars.Length);
      }
      // Display secure string length.
      Console.WriteLine("The length of the string is {0} characters.", 
                        testString.Length);
      testString.Dispose();
   }
}
// The example displays the following output:
//      The length of the string is 4 characters.

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

.NET Framework
Available since 2.0
Return to top
Show: