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

Вниз

Простой вопрос   Найти похожие ветки 

 
mr1Andersen   (2006-03-28 23:21) [0]

Простой вопрос, как перезагрузить комп, поставить на спящей и ждущий режимы, если команды:
ExitWindows(EW_RESTARTWINDOWS,0);
ExitWindows(EW_REBOOTSYSTEM,0);
ExitWindows(EW_EXITANDEXECAPP,0);
не дают результата.


 
kami ©   (2006-03-28 23:33) [1]

Дают результат, если использовать их не в сервисе.
Только нужно получить права SeShutdownPrivilege


 
Rial   (2006-03-29 01:27) [2]

Попробуй использовать "%SYSTEMROOT%\system32\shutdown.exe"


 
AbrosimovA   (2006-03-29 08:39) [3]

function MyExitWindows(RebootParam: Longword): Boolean;
var
 TTokenHd: THandle;
 TTokenPvg: TTokenPrivileges;
 cbtpPrevious: DWORD;
 rTTokenPvg: TTokenPrivileges;
 pcbtpPreviousRequired: DWORD;
 tpResult: Boolean;
const
 SE_SHUTDOWN_NAME = "SeShutdownPrivilege";
begin
 if Win32Platform = VER_PLATFORM_WIN32_NT then
 begin
   tpResult := OpenProcessToken(GetCurrentProcess(),
     TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
     TTokenHd);
   if tpResult then
   begin
     tpResult := LookupPrivilegeValue(nil,
                                      SE_SHUTDOWN_NAME,
                                      TTokenPvg.Privileges[0].Luid);
     TTokenPvg.PrivilegeCount := 1;
     TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
     cbtpPrevious := SizeOf(rTTokenPvg);
     pcbtpPreviousRequired := 0;
     if tpResult then
       Windows.AdjustTokenPrivileges(TTokenHd,
                                     False,
                                     TTokenPvg,
                                     cbtpPrevious,
                                     rTTokenPvg,
                                     pcbtpPreviousRequired);
   end;
 end;
 Result := ExitWindowsEx(RebootParam, 0);
end;


Вызов этой функции:

MyExitWindows(EWX_POWEROFF); //Выключить
MyExitWindows(EWX_REBOOT); //Перезагрузить
MyExitWindows(EWX_LOGOFF); //Сменить пользователя


 
mr1Andersen   (2006-03-31 01:36) [4]

Большое спасибо AbrosimovA.



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
15-1143442491
Gleb
2006-03-27 10:54
2006.04.16
Где можно скачать новые компоненты для Delphi 7


5-1129264772
MikeGipson
2005-10-14 08:39
2006.04.16
Не могу показать компонент


2-1143702326
thvfrjd
2006-03-30 11:05
2006.04.16
проблем с параметрами


1-1142420907
V-A-V
2006-03-15 14:08
2006.04.16
Просмотр XML файлов


6-1136699997
ezorcist
2006-01-08 08:59
2006.04.16
Запретить показывать ошибку