Checking if a user account is enabled in .NET
Here's a handy little code snippet to figure out if a local windows user account is enabled or not using the System.DirectoryServices
namespace.
private static bool IsUserAccountEnabled(string username)
{
try
{
var result = new DirectoryEntry { Path = "WinNT://" + Environment.MachineName + ",computer" }
.Children
.Cast<DirectoryEntry>()
.Where(d => d.SchemaClassName == "User")
.First(d => d.Properties["Name"].Value.ToString() == username);
return ((int)result.Properties["UserFlags"].Value & 2) != 2;
}
catch
{
return false;
}
}
~Eoin Campbell