Advertisement
Guest User

Untitled

a guest
Feb 8th, 2017
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.24 KB | None | 0 0
  1. public void SetSystemDate(Domain domain, DateTime dateTime)
  2. {
  3. var connectionOptions = new ConnectionOptions();
  4. connectionOptions.Username = domain.UserName;
  5. connectionOptions.Password = domain.Password;
  6. connectionOptions.EnablePrivileges = true;
  7. connectionOptions.Authentication = AuthenticationLevel.PacketPrivacy;
  8. connectionOptions.Impersonation = ImpersonationLevel.Impersonate;
  9. var offset = TimeZoneInfo.Local.GetUtcOffset(dateTime);
  10. var minuteOffset = $"{Math.Round(offset.TotalMinutes):000}";
  11. var datetimeString = dateTime.ToString($"yyyyddMMHHmmss.000000" + minuteOffset);
  12. var scope = new ManagementScope($"\\\\{domain.Controller}\\root\\cimv2", connectionOptions);
  13. scope.Connect();
  14. ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_OperatingSystem");
  15. using (ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query))
  16. {
  17. foreach (ManagementObject mobj in searcher.Get())
  18. {
  19. mobj.InvokeMethod("SetDateTime", new[] { datetimeString });
  20. mobj.Dispose();
  21. }
  22. }
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement