删除用户帐户
问题描述:
如何借助C#中的WMI删除管理员组的用户本地帐户。 (不使用System.DirectoryServices
和System.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)。
答
你想要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
所有这一切正在写一个3行VBScript文件。你为什么要这样做?只需自己创建VBS并运行它。 –