PDA

View Full Version : سوال: گرفتن رمز ورود (password char) در کنسول



amircccc
پنج شنبه 06 آذر 1393, 08:03 صبح
باسلام میخواستم در محیط console کاراکتری که از ورودی گرفته میشود به صورت ستاره دار باشد.یا به عبارت دیگر مانند password باشد.لطفا راهنمایی ام کنید.با تشکر

Jean Reno
پنج شنبه 06 آذر 1393, 08:17 صبح
SecureString securePwd = new SecureString();
ConsoleKeyInfo key;

Console.Write("Enter password: ");
do {
key = Console.ReadKey(true);

// بررسی میشود که کلید فشرده شده جزو حروف الفبا می‌باشد یا کلید دیگری است
if (((int) key.Key) >= 65 && ((int) key.Key <= 90)) {
// کاراکتر مربوط به کلید فشرده شده به انتهای متغیر سکوراسترینک اضافه می‌شود
securePwd.AppendChar(key.KeyChar);
Console.Write("*");
}
// خروج از حلقه در صورت فشردن کلید اینتر
} while (key.Key != ConsoleKey.Enter);
Console.WriteLine();

try
{
MessageBox.Show(securePwd);
}
catch (Win32Exception e)
{
Console.WriteLine(e.Message);
}

Jean Reno
پنج شنبه 06 آذر 1393, 09:42 صبح
به فهرست using ها در کدت اضافه کن


using System.Security;