运行结果:

代码:
public class SetSystemDateTime//设置系统日期类
{
[DllImportAttribute("Kernel32.dll")]
public static extern void GetLocalTime(SystemTime st);
[DllImportAttribute("Kernel32.dll")]
public static extern void SetLocalTime(SystemTime st);
}
[StructLayoutAttribute(LayoutKind.Sequential)]
public class SystemTime//系统时间类
{
public ushort vYear;//年
public ushort vMonth;//月
public ushort vDayOfWeek;//星期
public ushort vDay;//日
public ushort vHour;//小时
public ushort vMinute;//分
public ushort vSecond;//秒
}
private void button1_Click(object sender, EventArgs e)
{
this.textBox1.Text = DateTime.Now.ToString("F") +//得到系统时间
" " + DateTime.Now.ToString("dddd");
}
private void button2_Click(object sender, EventArgs e)
{
if (MessageBox.Show("您真的确定更改系统当前日期吗?",//设置系统当前日期时间
"信息提示", MessageBoxButtons.OK) == DialogResult.OK)
{
DateTime Year = this.dateTimePicker1.Value;//得到时间信息
SystemTime MySystemTime = new SystemTime();//创建系统时间类的对象
SetSystemDateTime.GetLocalTime(MySystemTime);//得到系统时间
MySystemTime.vYear = (ushort)this.dateTimePicker1.Value.Year;//设置年
MySystemTime.vMonth = (ushort)this.dateTimePicker1.Value.Month;//设置月
MySystemTime.vDay = (ushort)this.dateTimePicker1.Value.Day;//设置日
MySystemTime.vHour = (ushort)this.dateTimePicker2.Value.Hour;//设置小时
MySystemTime.vMinute = (ushort)this.dateTimePicker2.Value.Minute;//设置分
MySystemTime.vSecond = (ushort)this.dateTimePicker2.Value.Second;//设置秒
SetSystemDateTime.SetLocalTime(MySystemTime);//设置系统时间
button1_Click(null, null);//执行按钮点击事件
}
}
这篇博客介绍如何通过C#编程修改系统的日期和时间。通过创建`SetSystemDateTime`类,利用DllImport调用`Kernel32.dll`中的`GetLocalTime`和`SetLocalTime`方法来获取和设置系统时间。在用户界面中,当点击按钮时,会弹出确认对话框,若用户确认,则更新系统时间,并显示新的日期和时间。
3616

被折叠的 条评论
为什么被折叠?



