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

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

Как в XP перезагрузить комп??? [D7, WinXP]


CAHEK ©   (2004-04-10 21:16:00) 

Hello всем,у меня есть вопрос:Как в XP перезагрузить комп???
(Продовал много разных спосодов-и НЕПРЁТ!).


AndersoNRules   (2004-04-14 16:19:00) [1]

a shtob App otvechala na WM_QUERYENDSESSION:
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1081879825&n=5


AndersoNRules   (2004-04-14 16:16:00) [2]

Ato dlya tovo shtob vikliuchiti komp.
nu ti sam preobrazuyeshi, da?
Voila:

program Win_OFF;
uses
 windows;

var    hToken: THandle;
tkp: TTokenPrivileges;
ReturnLength: Cardinal;
begin
if OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then
begin        LookupPrivilegeValue(nil, 'SeShutdownPrivilege',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
     ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0);    end;
     end.


TUser   (2004-04-14 10:46:00) [3]

AdjustTokenPrivileges


Kind   (2004-04-14 00:28:00) [4]

А вообще Floppy написал
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1081868205&n=2


Kind   (2004-04-14 00:25:00) [5]

В XP нужно сначала получить "разрешение" на то, чтобы выключить или перезагрузить комп. Называется это всё Привилегии, конкретно твоя SeShutdownPrivilege
Как сделать это в Делпфи был у меня примерчик, но потерял ... пришлось написать библиотеку в C++ и подключать её к программе на Делпфи. Если ничего не найдёшь пиши


CAHEK   (2004-04-14 00:05:00) [6]

КАК???


Dimaxx   (2004-04-13 22:28:00) [7]

Перехватить его!


CAHEK   (2004-04-13 20:31:00) [8]

Эй типа кто-нибудь:как сделать чтобы прога отвечала на WM_QUERYENDSESSION


CAHEK   (2004-04-12 00:05:00) [9]

Порносайтов в сети больше всего:)
Как раз такой способ я и пробовал:
"ExitWindowsex(EWX_REBOOT or EWX_FORCE,0);"
На счет WM_QUERYENDSESSION:Нет не отвечает,а как сделать чтобы отвечала?


Dimaxx   (2004-04-11 23:26:00) [10]

Мона еще попробовать добавить так: ExitWindowsex(EWX_REBOOT or EWX_FORCE,0);


AndersoNRules   (2004-04-11 22:52:00) [11]

kstati a mojet trouble ne v prozzedure perezagruzki. Tvoya programa otvechyaet na WM_QUERYENDSESSION  ?  esli net to ona ne budet znati shto ey nado zakrivazza, znachit WinXP ne perezagruzizza----u menya tochno tak ne delaet.


alexsandri   (2004-04-11 22:38:00) [12]

есть еще один тупой способ презагрузить
Usage: shutdown [-i | -l | -s | -r | -a] [-f] [-m \computername] [-t xx] [-c "comment"] [-d up:xx:yy]

 тупо но работает как использовать вроде понятно стнадартная команда сиситемы


DrPass   (2004-04-11 21:32:00) [13]

Написать можно. Но суть в том, что сначала нужно учиться искать информацию, а уже потом - программировать. Тем более что материалов по твоей теме в инете больше, чем порносайтов


CAHEK   (2004-04-11 20:37:00) [14]

А чтобы долго не искать,нельзя ли написать???


DrPass   (2004-04-11 12:15:00) [15]


> Продовал много разных спосодов-и НЕПРЁТ!).


> такой:ExitWindowsex(EWX_REBOOT,0);
> И еще такой же,только там OR было.

:-))))
Все верно. Только для WindowsXP нужна еще одна вещь. Найдешь - будешь молодцом.


CAHEK   (2004-04-11 01:40:00) [16]

такой:ExitWindowsex(EWX_REBOOT,0);
И еще такой же,только там ORбыло.
И др API ф-ю для завершения работы с системой:ExitWindows();
Результат:при компиляции не выдает ERROR'ов,но и ни чего не делает!


Dimaxx   (2004-04-10 23:08:00) [17]

Какие способы пробовал?


DrPass   (2004-04-10 22:24:00) [18]

>САНЕК
Попробуй еще. Наверняка попрет (этот вопрос всем уже натошнил задолго до появления ХР)
>uny
Ты, очевидно, и Windows недавно увидел? :)


uny   (2004-04-10 21:46:00) [19]

а комп новый? нам тут завезли, так нажимаешь на передней панели, а эффект такой будто "пуск завершение работы выключение"


Наверх

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