![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как изменить системное время с помощью Delphi? [D6, WinXP]
Volf_555 © (2005-12-08 19:20:00)Следующий код ничего изменять не хочет:
procedure TForm1.Button1Click(Sender: TObject);
var
NewTD: TSYSTEMTIME;
begin
NewTD.wYear:=2000;
NewTD.wMonth:=3;
NewTD.wDay:=28;
NewTD.wDayOfWeek:=1;
NewTD.wHour:=12;
NewTD.wMinute:=12;
NewTD.wSecond:=12;
NewTD.wMilliseconds:=0;}
SetSystemTime(NewTD);
end;
В чём неправильность кода?!
Volf_555 (2005-12-08 19:54:00) [1]umbra © (08.12.05 19:52) [4]
28 марта 2000 года был не понедельник, а вторник
Знаю... это просто для проверки этот код использовал я
umbra (2005-12-08 19:53:00) [2]и сегодня не понедельник, а четверг
umbra (2005-12-08 19:52:00) [3]28 марта 2000 года был не понедельник, а вторник
Volf_555 (2005-12-08 19:52:00) [4]Вдобавок - этот код изменяет всё нормально, кроме часов. При использовании этого кода вместо 16 часов выползает 18 часов, то есть на 2 часа больше
Volf_555 (2005-12-08 19:35:00) [5]А следующий код работает!
procedure TForm1.Button1Click(Sender: TObject);
var
NewTD: TSYSTEMTIME;
a:Boolean;
begin
NewTD.wYear:=2005;
NewTD.wMonth:=12;
NewTD.wDay:=8;
NewTD.wDayOfWeek:=1;
NewTD.wHour:=16;
NewTD.wMinute:=23;
NewTD.wSecond:=12;
NewTD.wMilliseconds:=0;
a:=SetSystemTime(NewTD);
if a=True then
ShowMessage('Настройки благополучно изменены') else
ShowMessage('Что-то не то в коде');
end;
Странно, однако....
Anatoly Podgoretsky (2005-12-08 19:27:00) [6]Привилегия систем, а не пользователя.
Virgo_Style (2005-12-08 19:24:00) [7]afaik, нужно получить привилегию на изменение времени