Welcome to TSDN. Please post your relevant code. Thanks.
Here is my code:
private void btnCreate_Click(object sender, EventArgs e)
{
int i;
String userName = txtUserName.Text;
String userPassword = txtUserPass.Text;
String domain = txtDomain.Text;
String connectionPrefix = "LDAP://" + domain + "/CN=Users";
i = domain.IndexOf('.');
while (i != -1)
{
connectionPrefix = connectionPrefix + ",DC=" + domain.Substring(0,i);
domain = domain.Remove(0, i + 1);
i = domain.IndexOf('.');
}
connectionPrefix = connectionPrefix + ",DC=" + domain;
DirectoryEntry dirEntry = new DirectoryEntry(connectionPrefix, txtAdminUserName.Text, txtAdminPass.Text);
DirectoryEntry newUser = dirEntry.Children.Add("CN=" + userName, "user");
newUser.Properties["samAccountName"].Value = userName;
newUser.Properties["userPrincipalName"].Value = userName + "@" + txtDomain.Text;
newUser.Properties["displayName"].Value = userName;
newUser.Properties["givenName"].Value = userName;
newUser.Properties["msNPAllowDialin"].Value = false;
newUser.Properties["description"].Value = txtDescription.Text;
newUser.CommitChanges();
dirEntry.Close();
newUser.Close();
EnableAndSetProfile();
}
private void EnableAndSetProfile()
{
int i = -1;
try
{
String domain = txtDomain.Text;
String connectionPrefix = "LDAP://" + domain + "/CN=" + txtUserName.Text + ",CN=Users";
i = domain.IndexOf('.');
while (i != -1)
{
connectionPrefix = connectionPrefix + ",DC=" + domain.Substring(0, i);
domain = domain.Remove(0, i + 1);
i = domain.IndexOf('.');
}
connectionPrefix = connectionPrefix + ",DC=" + domain;
DirectoryEntry user = new DirectoryEntry(connectionPrefix, txtAdminUserName.Text, txtAdminPass.Text);
int val = (int)user.Properties["userAccountControl"].Value;
user.Properties["userAccountControl"].Value = 512;
if (txtUserProfile.Text.Trim() != "")
{
if (user.Properties.Contains("HomeDrive"))
user.Properties["HomeDrive"].Value = "Z:";
else
user.Properties["HomeDrive"].Add("Z:");
if (user.Properties.Contains("HomeDirectory"))
user.Properties["HomeDirectory"].Value = txtUserProfile.Text;
else
user.Properties["HomeDirectory"].Add(txtUserProfile.Text);
}
user.CommitChanges();
user.Close();
}
catch(Exception err)
{
MessageBox.Show("Error In Enable User Account.\n" + err.Message);
}
}