Ir ao conteúdo
  • Cadastre-se

Como pegar os nomes de grupos de usuários do Windows


pintinho12

Posts recomendados

Então galera, estou criando um App para o lugar onde trabalho, estamos formatando várias máquinas kkk, várias mesmo.. e todas são multi estação com 24 usuários, estou usando C#, eu criei e tal, o programa cria os usuários, mas eu estou criando para o grupo HomeUsers, pois nao sei qual o nome que uso para os outros grupos..

Como eu posso criar um ListBox que mostre os grupos de usuário com os nomes corretos para usar? Ou então pelo menos, o nome que posso usar no geral pra qualquer windows pra adicionar usuário ao grupo de área de trabalho remota.

Obrigado, meu código está abaixo, não sou muito bom, mas está funcionando e fazendo o que quero até o momento kkk

private void button1_Click(object sender, EventArgs e)
{
if (txtCredentialName.Text.Length == 0 || txtCredentialPass.Text.Length == 0 || txtDescription.Text.Length == 0)
{
MessageBox.Show(this, "Não deixe nenhum campo em branco!", "Erro!", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}

DisableControls();

string UserName = txtCredentialName.Text;
string PassWord = txtCredentialPass.Text;
int parsePW = 0;
int i = 1;
int a = Convert.ToInt32(txtQtde.Value);
bool tryTo = int.TryParse(txtCredentialPass.Text, out parsePW);
if (!tryTo)
{
MessageBox.Show(this, "Você só pode ativar ordem crescente se sua senha for numérica!", "Erro!", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
while(i < a)
{
try
{
if(a != 1)
{
if (i < 10)
{
UserName = txtCredentialName.Text + "0" + i;
}
else
{
UserName = txtCredentialName.Text + i;
}
}
DirectoryEntry AD = new DirectoryEntry("WinNT://" +
Environment.MachineName + ",computer");
DirectoryEntry NewUser = AD.Children.Add(UserName, "user");

if(chkPasswordType.Checked)
{
if (i < 10)
{
PassWord = "0" + parsePW.ToString();
parsePW++;
}
else
{
PassWord = parsePW.ToString();
parsePW++;
}
}
NewUser.Invoke("SetPassword", new object[] { PassWord });
NewUser.Invoke("Put", new object[] { "Description", txtDescription.Text });
NewUser.CommitChanges();
DirectoryEntry grp;

grp = AD.Children.Find("HomeUsers", "group");
if (grp != null) { grp.Invoke("Add", new object[] { NewUser.Path.ToString() }); }
barChange.Text = i + "/" + txtQtde.Value.ToString();
txtLog.Items.Add("Usuário: " + UserName + " || Senha: " + PassWord + " || foi criado com êxito!");
i++;
}
catch(Exception ex)
{
MessageBox.Show("Error:\r\n" + ex.Message.ToString());
EnableControls();
return;
}
EnableControls();
}
MessageBox.Show(this, "Todos os usuários foram criados com sucesso! Por favor verifique os Logs!", "Sucesso!", MessageBoxButtons.OK, MessageBoxIcon.Information);
}

1379949_202897429893413_155413830_n.jpg

O bonitão trabalhando...

Obrigado :D

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...