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

Вниз

Спячка/Перезагрузка WindowsXP, Win2000   Найти похожие ветки 

 
Asker ©   (2002-03-08 20:29) [0]

Подскажите, как отправить в спячку WindowsXP? А как правильно его перезагрузить/завершить?
Некоторые предлагают такой код(списал один в один):

procedure RebootSystem;
var
handle, ph: THandle;
pid, n: DWORD;
luid: TLargeInteger;
priv: TOKEN_PRIVILEGES;
dummy: PTokenPrivileges;
ver: TOSVERSIONINFO;
begin
ver.dwOSVersionInfoSize := Sizeof(ver);
GetVersionEx(ver);
if ver.dwPlatformId=VER_PLATFORM_WIN32_NT then begin
pid := GetCurrentProcessId;
if OpenProcessToken(ph, TOKEN_ADJUST_PRIVILEGES, handle) then
if LookupPrivilegeValue(nil, "SeShutdownPrivilege", luid) then begin
priv.PrivilegeCount := 1;
priv.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
priv.Privileges[0].Luid := luid;
dummy := nil;
AdjustTokenPrivileges(handle, false, priv, 0, dummy^, n);
end;
end;
ExitWindowsEx(EWX_REBOOT, 0);
//ExitWindowsEx(EWX_SHUTDOWN,0);
end;

Но данный код не работает в WindowsXP и Win2000.

С уважением, Asker
question2000@fromru.com


 
VuDZ ©   (2002-03-08 20:36) [1]

я думаю, что msdn поможет нуждающимся - там всё хорошо описано и есть пример, но код, в общем-то верный.

PS GetLastError() - лучший друг прогруммёра



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

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

Наверх




Память: 0.46 MB
Время: 0.01 c
3-26042
SB.John
2002-04-15 09:05
2002.05.09
Что быстрее: читать из таблицы или из свойства?


1-26072
Magic
2002-04-26 10:53
2002.05.09
Формат файлов


6-26206
Igl
2002-02-22 10:30
2002.05.09
NMFTP. Как определить размер файла не начиная его скачивать.


14-26274
drpass
2002-04-01 05:08
2002.05.09
Новые возможности Delphi6


1-26102
com6
2002-04-26 16:50
2002.05.09
Помогите: Как отследить манипуляции мышью и работу на клавиатуре?