![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Изменение системного времени
Степан © (2008-01-02 21:01:00)Как с помощью .NET изменить системное время?
Evgeny V (2008-01-03 06:15:00) [1]Не уверен, я не нашел для .NET, но вроде только через вызовы соотвествующего API Windows или другие не C#(точнее .NET) средства и методы. Я во всяком случае так эту проблему и решил. Вот заготовки, которые можно вставить в свой класс, не забыв включить
using System.Runtime.InteropServices;
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public 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 wMilliseconds;
}//end System Time
[DllImport("kernel32.dll", CallingConvention = CallingConvention.StdCall, SetLastError = true)]
public static extern void GetSystemTime(out SystemTime st);
[DllImport("kernel32.dll", CallingConvention = CallingConvention.StdCall, SetLastError = true)]
public static extern bool SetSystemTime(ref SystemTime st);
private void SetCurrentTime(DateTime tud)
{
SystemTime st;
st.wYear =(ushort) tud.Year;
st.wMonth = (ushort)tud.Month;
st.wDay = (ushort)tud.Day;
st.wHour = (ushort)tud.Hour;
st.wMinute = (ushort)tud.Minute;
st.wSecond = (ushort)tud.Second;
st.wMilliseconds = (ushort)tud.Millisecond;
st.wDayOfWeek = (ushort)tud.DayOfWeek;
SetSystemTime(ref st);
}//end
Можно и через WMI -не пробовал сам и не разбирался, но как-то смотрел ссылку
http://www.gotdotnet.ru/forums/Common/181321.aspx#181846
korneley (2008-01-03 01:16:00) [2]
> Сисемным
читать, как сис темным :)
korneley (2008-01-03 01:15:00) [3]Два вопроса.
1)А это обязательно"с помощью .NET"
2)Что считаем " Сисемнымвременем"