新增设置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…
Reference in New Issue
Block a user