C#调用Kernel32.dll下SetLocaleInfo接口,怎么去修改操作系统中的时间和日期格

2025-03-06 23:26:39
推荐回答(1个)
回答1:

[DllImport("Kernel32.dll")]
        private static extern int SetLocalTime(ref SystemTime sysTime);

        [StructLayout(LayoutKind.Sequential)]
        private struct SystemTime
        {
            public ushort wYear;
            public ushort wMonth;
            public ushort wDayOfWeek;
            public ushort wDay;
            public ushort wHour;
            public ushort wMinute;
            public ushort wSecond;
            public ushort wMiliseconds;
            public SystemTime(ushort year, ushort month, ushort dayOfweek, ushort day, ushort hour, ushort minute, ushort second, ushort millse)
            {
                wYear = year;
                wMonth = month;
                wDayOfWeek = dayOfweek;
                wDay = day;
                wHour = hour;
                wMinute = minute;
                wSecond = second;
                wMiliseconds = millse;
            }
        }
        
        //调用
        SetLocalTime(ref systime);