新增设置Windows系统时间相关方法
This commit is contained in:
		
							parent
							
								
									189ed541c9
								
							
						
					
					
						commit
						6430a50bdf
					
				
							
								
								
									
										1
									
								
								Falcon.SugarApi/WindowsSystem/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								Falcon.SugarApi/WindowsSystem/README.md
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
			
		||||
封装一些Windows操作系统相关操作
 | 
			
		||||
							
								
								
									
										46
									
								
								Falcon.SugarApi/WindowsSystem/WindowsSystemTime.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										46
									
								
								Falcon.SugarApi/WindowsSystem/WindowsSystemTime.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,46 @@
 | 
			
		||||
using System;
 | 
			
		||||
using System.Runtime.InteropServices;
 | 
			
		||||
 | 
			
		||||
namespace Falcon.SugarApi.WindowsSystem
 | 
			
		||||
{
 | 
			
		||||
    /// <summary>
 | 
			
		||||
    /// Windows系统时间
 | 
			
		||||
    /// </summary>
 | 
			
		||||
    public static class WindowsSystemTime
 | 
			
		||||
    {
 | 
			
		||||
        [StructLayout(LayoutKind.Sequential)]
 | 
			
		||||
        private struct Systemtime
 | 
			
		||||
        {
 | 
			
		||||
            public short year;
 | 
			
		||||
            public short month;
 | 
			
		||||
            public short dayOfWeek;
 | 
			
		||||
            public short day;
 | 
			
		||||
            public short hour;
 | 
			
		||||
            public short minute;
 | 
			
		||||
            public short second;
 | 
			
		||||
            public short milliseconds;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        [DllImport("kernel32.dll")]
 | 
			
		||||
        private static extern bool SetLocalTime(ref Systemtime time);
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 设置Windows系统时间。应用程序必须以管理员身份运行,否则无法设置
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <param name="dt">需要设置的时间</param>
 | 
			
		||||
        /// <returns>返回系统时间设置状态,true为成功,false为失败</returns>
 | 
			
		||||
        public static bool SetLocalDateTime(DateTime dt) {
 | 
			
		||||
            Systemtime st;
 | 
			
		||||
            st.year = (short)dt.Year;
 | 
			
		||||
            st.month = (short)dt.Month;
 | 
			
		||||
            st.dayOfWeek = (short)dt.DayOfWeek;
 | 
			
		||||
            st.day = (short)dt.Day;
 | 
			
		||||
            st.hour = (short)dt.Hour;
 | 
			
		||||
            st.minute = (short)dt.Minute;
 | 
			
		||||
            st.second = (short)dt.Second;
 | 
			
		||||
            st.milliseconds = (short)dt.Millisecond;
 | 
			
		||||
            bool rt = SetLocalTime(ref st);
 | 
			
		||||
            return rt;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user