![]() |
| 编程社区 » C#编程 » 请问?如何用C#实现修改系统时区??? |
请问?如何用C#实现修改系统时区??? |
nyucv |
发表:
|
看一下这个API函数
GetTimeZoneInformation //取得与系统时区设置有关的信息
用C#调用它
可以用API来做:
[StructLayout (LayoutKind.Sequential)]
public 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 Miliseconds;
}
//api函数声明
[DllImport ("kernel32.dll", CharSet=CharSet.Ansi)]
public extern static bool SetSystemTime(ref SYSTEMTIME time);
private void button1_Click(object sender, System.EventArgs e)
{
//调用代码
SYSTEMTIME t = new SYSTEMTIME ();
t.Year = 2000;
t.Month = 1;
t.Day = 2;
t.Hour = 12-8; //这个函数使用的是0时区的时间,对于我们用+8时区的,时间要自己算一下.如要设12点,则为12-8
t.Minute = 5;
bool v = SetSystemTime(ref t);
Console.WriteLine(v.ToString());
}
use SetTimeZoneInformation API, see
http://www.pinvoke.net/default.aspx/kernel32.SetTimeZoneInformation
又学了一招,谢谢
好谢谢各位!:)
结贴了,也Mark一下!
mark
-8的8是怎么得到的?
| 编程社区 2008 浙ICP备09013498号 |
| © TinyBBS.cn |
| 编程好站连接:codeproject sf.net codeplex |