Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.03;
Скачать: CL | DM;

Вниз

Как изменить системное время в WinNT-2000 ?   Найти похожие ветки 

 
Alku   (2002-05-22 11:17) [0]

Надо программно изменить системное время под NT. SetSystemTime не корректно работает. В описании сказано что надо чегото там еще разрешать. Обьясните как все это сделать?


 
EAlexander ©   (2002-05-22 12:12) [1]

1. у пользователя должны быть права на изменение времени
2. надо учитывать смещение по часовым поясам


 
Alku   (2002-05-22 14:43) [2]

А как конкретно?


 
EAlexander ©   (2002-05-22 15:18) [3]

Это код у меня работает :)

procedure MyProc;
var
ST : SystemTime;
DT : TDateTime;
Year, Month, Day: Word;
Hour, Min, Sec, MSec: Word;
ID : Integer;
begin
DT := Now - 1;
DecodeDate(DT, Year, Month, Day);
ST.wYear := Year;
ST.wMonth := Month;
ST.wDay := Day;
ST.wHour := Hour + ID;
ST.wMinute := Min;
ST.wSecond := Sec;
ST.wMilliseconds := 0;
Win32Check(SetSystemTime(ST));
end;



 
EAlexander ©   (2002-05-22 15:22) [4]

ID - смещение согалсно часовым поясам :)


 
ZZ ©   (2002-05-22 16:38) [5]

var
hToken: THandle;
tkp: TTokenPrivileges;
ReturnLength: Cardinal;
begin
if OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES orTOKEN_QUERY, hToken)
then begin
LookupPrivilegeValue(nil, SE_SYSTEMTIME_NAME ,tkp.Privileges[0].Luid); tkp.PrivilegeCount:=1; // one privelege to set tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
if AdjustTokenPrivileges(hToken, False, tkp, 0, nil, ReturnLength)then
Код EAlexander
end;end.



Страницы: 1 вся ветка

Текущий архив: 2002.06.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
6-7151
серёга
2002-03-25 12:29
2002.06.03
Привет всем. Люди добрые подскажите как наити IP-адрес


14-7172
VictorT
2002-04-19 14:19
2002.06.03
Прогрываю по таймауту в БК.


8-7122
Dert
2002-01-12 13:11
2002.06.03
RichEdit


14-7194
sasha_b
2002-04-26 13:41
2002.06.03
Свойства


1-6983
Gumbert-Gumbert
2002-05-22 22:01
2002.06.03
Как в компоненте (наследник TTreeView) отловить событие Expanding