AdminTool.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Azylee.Core.DataUtils.CollectionUtils;
  2. using Azylee.Core.ProcessUtils;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.Diagnostics;
  6. using System.Linq;
  7. using System.Text;
  8. namespace Azylee.Core.WindowsUtils.AdminUtils
  9. {
  10. /// <summary>
  11. /// Administrator 工具
  12. /// </summary>
  13. public static class AdminTool
  14. {
  15. /// <summary>
  16. /// 检查 Administrator 密码是否正确
  17. /// </summary>
  18. /// <param name="pwds"></param>
  19. /// <returns></returns>
  20. public static string CheckPasswords(List<string> pwds)
  21. {
  22. if (Ls.Ok(pwds))
  23. foreach (var item in pwds)
  24. if (CheckPassword(item)) return item;
  25. return null;
  26. }
  27. /// <summary>
  28. /// 检查 Administrator 密码是否正确
  29. /// </summary>
  30. /// <param name="password"></param>
  31. /// <returns></returns>
  32. public static bool CheckPassword(string password)
  33. {
  34. try
  35. {
  36. Process process = ProcessStarter.NewProcess(
  37. exe: "cmd.exe",
  38. username: "administrator",
  39. password: password);
  40. bool flag = process.Start();
  41. process.Kill();
  42. return flag;
  43. }
  44. catch { return false; }
  45. }
  46. }
  47. }