Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

2 вопроса [D6]


Пубертанец ©   (2003-09-02 17:39:00) 

1) Хочу вызвать функцию AdjustTokenPrivileges для установления привилегии SE_SYSTEMTIME_NAME - как?

2) Почему, когда вызываю функцию SetSystemTime(lpSystemTime) у меня часы увеличиваются на 3 часа, чем задаю в lpSystemTime.wHour (var lpSystemTime: TSystemTime;)?


clickmaker   (2003-09-03 11:15:00) [1]

1) Help по AdjustTokenPrivileges, там все это написано
2) GetTokenInformation


Пубертанец   (2003-09-03 10:52:00) [2]

С AdjustTokenPrivileges я уже разобрался.
А вот с SE_SYSTEMTIME_NAME - в WinAPI help написано, что это константа, а где она прописана, не нашел. Дельфя не понимает ее.

Кстати, для развития темы:
1) как, наоборот, снять эту привилегию
2) как узнать, есть ли у пользователя эта привилегия


Игорь Шевченко   (2003-09-03 10:22:00) [3]

F1 на строке с ошибкой и все станет ясно


Пубертанец   (2003-09-03 10:02:00) [4]

Че-то ругается на SE_SYSTEMTIME_NAME:
Undeclared identifier: "SE_SYSTEMTIME_NAME"

А на AdjustTokenPrivileges(hToken, false, tkp, 0, nil, 0); говорит:
There is no overloaded version of "AdjustTokenPrivileges" that can be called with these arguments


Пубертанец   (2003-09-02 18:02:00) [5]

Спасибо, но проверю уже завтра. Конец дня.


clickmaker   (2003-09-02 17:59:00) [6]

1)
var hToken: THandle;
tkp: TOKEN_PRIVILEGES;

OpenProcessToken(GetCurrentProcess, TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken);
LookupPrivilegeValue(nil, SE_SYSTEMTIME_NAME, tkp.Privileges[0].Luid);
tkp.PrivilegeCount := 1;
tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken, false, tkp, 0, nil, 0);


clickmaker   (2003-09-02 17:56:00) [7]

2) SetLocalTime


Наверх

Титульная страница Поиск, карта сайта Написать письмо