SecureString.SetAt Method
.NET Framework 2.0
Note: This method is new in the .NET Framework version 2.0.
Replaces the existing character at the specified index position with another character.
Namespace: System.Security
Assembly: mscorlib (in mscorlib.dll)
Assembly: mscorlib (in mscorlib.dll)
The following code example demonstrates how the AppendChar, InsertAt, RemoveAt, SetAt, and Clear methods affect the value of a SecureString object.
// This example demonstrates the AppendChar, // InsertAt, RemoveAt, SetAt, and Clear methods. using namespace System; using namespace System::Security; int main() { String^ msg1 = L" SecureString = {0}\n Length = {1}\n"; String^ msg2 = L"This example demonstrates the effect of the AppendChar, InsertAt,\n" L"RemoveAt, SetAt, and Clear methods on the value of a SecureString\n" L"object. This example simulates the value of the object because the\n" L"actual value is encrypted.\n"; SecureString ^ ss = gcnew SecureString; // This sample modifies the contents of a SecureString, ss, in // several steps. After each step, the length and simulated value of ss // are displayed. The actual value of ss is encrypted. Console::WriteLine( msg2 ); Console::WriteLine( L"1) The initial value of the SecureString object:" ); Console::WriteLine( msg1, L"\"\"", ss->Length ); Console::WriteLine( L"2) AppendChar: Append 'a' to the value:" ); ss->AppendChar( 'a' ); Console::WriteLine( msg1, L"\"a\"", ss->Length ); Console::WriteLine( L"3) AppendChar: Append 'X' to the value:" ); ss->AppendChar( 'X' ); Console::WriteLine( msg1, L"\"aX\"", ss->Length ); Console::WriteLine( L"4) AppendChar: Append 'c' to the value:" ); ss->AppendChar( 'c' ); Console::WriteLine( msg1, L"\"aXc\"", ss->Length ); Console::WriteLine( L"5) InsertAt: Insert 'd' at the end of the value (equivalent\n" L" to AppendChar):" ); ss->InsertAt( ss->Length, 'd' ); Console::WriteLine( msg1, L"\"aXcd\"", ss->Length ); Console::WriteLine( L"6) RemoveAt: Remove the last character ('d') from the value:" ); ss->RemoveAt( 3 ); Console::WriteLine( msg1, L"\"aXc\"", ss->Length ); Console::WriteLine( L"7) SetAt: Set the second character ('X') of the value to 'b':" ); ss->SetAt( 1, 'b' ); Console::WriteLine( msg1, L"\"abc\"", ss->Length ); Console::WriteLine( L"8) Clear: Delete the value of the SecureString object:" ); ss->Clear(); Console::WriteLine( msg1, L"\"\"", ss->Length ); return 0; } /* This code example produces the following results: This example demonstrates the effect of the AppendChar, InsertAt, RemoveAt, SetAt, and Clear methods on the value of a SecureString object. This example simulates the value of the object because the actual value is encrypted. 1) The initial value of the SecureString object: SecureString = "" Length = 0 2) AppendChar: Append 'a' to the value: SecureString = "a" Length = 1 3) AppendChar: Append 'X' to the value: SecureString = "aX" Length = 2 4) AppendChar: Append 'c' to the value: SecureString = "aXc" Length = 3 5) InsertAt: Insert 'd' at the end of the value (equivalent to AppendChar): SecureString = "aXcd" Length = 4 6) RemoveAt: Remove the last character ('d') from the value: SecureString = "aXc" Length = 3 7) SetAt: Set the second character ('X') of the value to 'b': SecureString = "abc" Length = 3 8) Clear: Delete the value of the SecureString object: SecureString = "" Length = 0 */
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.