删除用户帐户

时间:2011-10-21 17:00:11

标签: c# wmi

如何在C#中使用WMI删除管理员组的用户本地帐户。 (不使用System.DirectoryServicesSystem.DirectoryServices.AccountManagement)。

我试过这段代码。但我不知道如何运行它。

  using (var myDeleteUser = new StreamWriter("DeleteUser.vbs"))
        {
            myDeleteUser.WriteLine("Set objAdminGroup = GetObject(\"WinNT://" + hostHame + "/" + Settings.AdministratorsGroup + ",group\")");
           myDeleteUser.WriteLine("Set objUser = GetObject(\"WinNT://" + domain + "/" + userName + ",user\")");
            myDeleteUser.WriteLine("objAdminGroup.Remove(objUser.ADsPath)");
        }

编辑: 我试着这样做:

 Process proc = new Process();
 proc.StartInfo.FileName = "DeleteUser.vbs";
 proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
 proc.Start();
 proc.WaitForExit();
 int exitCode = proc.ExitCode;
 proc.Close();

但我在VBS文件中有错误(vbs权限被拒绝Getobject)。

1 个答案:

答案 0 :(得分:0)

您想要Win32_UserAccount 请注意这里的c#代码实现 - 删除顶部应该是微不足道的

Enumerate Windows user group members on remote system using c#

您是要删除该帐户,还是仅从该群组中移除? 如果要从组中删除,请检查Win32_GroupUser对象。 http://msdn.microsoft.com/en-us/library/windows/desktop/aa394153%28v=vs.85%29.aspx