如何在C#中通过WMI删除administrators组的用户本地帐户。(不使用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)。
发布于 2011-10-22 02:09:59
您需要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
https://stackoverflow.com/questions/7852747
复制相似问题