Более быстрый способ узнать, существует ли пользователь в системе?
У меня есть приложение, которое проверяет, существует ли пользователь (если не создает его) при каждом запуске. Это делается следующим образом:
bool bUserExists = false;
DirectoryEntry dirEntryLocalMachine =
new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer");
DirectoryEntries dirEntries = dirEntryLocalMachine.Children;
foreach (DirectoryEntry dirEntryUser in dirEntries)
{
bUserExists = dirEntryUser.Name.Equals("UserName",
StringComparison.CurrentCultureIgnoreCase);
if (bUserExists)
break;
}
Проблема в большинстве систем, где она развернута. Это может занять 6 - 10 секунд, что слишком долго ... Мне нужно найти способ уменьшить это (насколько это возможно). Есть лилучше или жеБыстрее Как я могу использовать, чтобы проверить, существует ли пользователь в системе или нет?
Я знаю, что есть и другие способы решения этой проблемы, например, когда другие приложения спят в течение 10 секунд, или этот инструмент отправляет сообщение, когда оно будет готово, и т. Д ... Но если я смогу значительно сократить время, необходимое для поиска пользователя , это сделало бы мою жизнь намного проще.