Export (0) Print
Expand All

SecureString Constructor (Char*, Int32)

This API supports the .NET Framework 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 API is not CLS-compliant. The CLS-compliant alternative is SecureString().

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

public SecureString(
	char* value,
	int length


Type: System.Char*
A pointer to an array of System.Char objects.
Type: System.Int32
The number of elements of value to include in the new instance.


value is null.


length is less than zero or greater than 65536.


An error occurred while encrypting or decrypting the value of this secure string.


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.

Windows 2000 Platform Note: 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.", 
// The example displays the following output:
//      The length of the string is 4 characters.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

  • SecurityCriticalAttribute 

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

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Community Additions

© 2015 Microsoft