【发布时间】:2019-06-13 13:35:14
【问题描述】:
主要问题是windows将来会像下面这个方法一样禁用修改用户密码,我需要在这个之外找到其他方法。
static void batchCMD(string user, string newPass)
{
try
{
Process cmdProcess = new Process();
cmdProcess.StartInfo.FileName = "cmd.exe";
if (System.Environment.OSVersion.Version.Major >= 6)
{
cmdProcess.StartInfo.Verb = "runas";
}
cmdProcess.StartInfo.CreateNoWindow = true;
cmdProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
cmdProcess.StartInfo.WorkingDirectory = Directory.GetCurrentDirectory();
cmdProcess.StartInfo.Arguments = "/c net user " + user + " " + newPass;
cmdProcess.Start();
cmdProcess.WaitForExit(10000);
return;
}
catch (Exception)
{
throw;
}
finally
{
File.WriteAllText(@"C:\temp\txt.log", DateTime.Now + " " + "HIUHIUHIUH" + "\n");
}
}
如果您有其他更好的解决方案,请与我分享。
【问题讨论】:
-
我不确定,但如果你不能通过 PowerShell 完成,我会感到惊讶,也许查一下
-
Windows 将来会禁止像这样修改用户密码。你在哪里读到的?
-
你做过任何研究吗?您似乎可以通过简单的 Google 搜索很快找到答案。
-
@dotNET
NET命令行程序在最近的 Windows 版本中删除或弃用了许多功能,因此可以合理地假设 Windows 的命令行界面不如Win32 API。示例包括net name、net print、net send、net start/stop等。 -
@Dai 那仍然没有回答 dotNET 的问题。
标签: c#