Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: WinAPI и системное программирование > ExitWindows, ExitWindowsEx |
Автор: Toboom 20.2.2007, 19:08 |
Hi! Казалось бы ничего нет проще. Нужно перезапустить комп. Т.е. как "Пуск\ Выключение \ Перезагрузка". Пробуем так: If not Win32Check(ExitWindows(EW_REBOOTSYSTEM, 0)) Then ShowMessage('Низя перезагрузиться'); Получаем не полную перезагрузку, а завершение сеанса и предложение ввести пароль пользователя. Тогда пробуем так: If not Win32Check(ExitWindowsEX(EWX_REBOOT, 0)) Then ShowMessage('Низя перезагрузиться'); получаем сообщение "System Error code 1394 Клиент не обладает требуемыми правами." Это при том, что всё происходит от имени администратора. Где я тут заблудился в трех деревьях? |
Автор: Sunvas 20.2.2007, 19:19 |
Тебе нужны специальные привелегии для выключения компа. А получать их нужно ручками. |
Автор: Toboom 20.2.2007, 19:54 | ||
Спасибо, Sunvas. Следующий код позволяет получить такме привилегии.
После чего можно If AdjustToken Then ExitWindowsEX(EWX_REBOOT, 0)) Всем успехов! Модератор: используйте подсветку кода http://forum.vingrad.ru/index.php?showtopic=126445 |