在项目中需要和服务器对时,时间不同,需要修改本机时间,在网上找到的代码都大同小异,共同点就是都改不了本机时间。
修改本机时间和系统有关系吗?谁能提供份可用的代码啊,我现在毫无头绪!
C#如何通过程序修改本机时间
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
真的小白啊 2021-08-31 20:38关注管理员身份运行程序,
设置的新时间要是UTC时间,不是北京时间using System; using System.Runtime.InteropServices; namespace ConsoleApp2 { public struct SystemTime { public ushort Year; public ushort Month; public ushort DayOfWeek; public ushort Day; public ushort Hour; public ushort Minute; public ushort Second; public ushort Milliseconds; } internal class Program { [DllImport("Kernel32.dll")] private static extern int SetSystemTime(in SystemTime systemTime); private static void Main(string[] args) { //需要管理员身份运行程序! //设置UTC时间,不是北京时间 SystemTime newTime = new SystemTime { Year = 2021, Month = 8, DayOfWeek = 2, Day = 31, Hour = 12, Minute = 40, Second = 0, Milliseconds = 0 }; if (SetSystemTime(newTime) != 0) { Console.WriteLine("系统时间设置成功!"); } else { Console.WriteLine("系统时间设置失败!"); Console.WriteLine("需要管理员身份运行程序!"); } Console.ReadKey(); } } }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报