Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> EWX_SHUTDOWN, Не shutdown-ит! 
:(
    Опции темы
Вася
  Дата 25.1.2003, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 27.12.2002

Репутация: нет
Всего: нет



Привет!

Мне надо вырубить комп и я использую Exitwindowsex(ewx_force,0) но он делает logoff. А на
ewx_shutdown, ewx_reboot вообще никак не риагирует. подскажитеб что делать.
Спасибо.

P.S. Что это с форумом? smile.gif
PM MAIL   Вверх
Vit
Дата 25.1.2003, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 1
Всего: 207



Цитата
P.S. Что это с форумом? smile.gif

http://forum.vingrad.ru/index.php?act=ST&f=27&t=5911


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Guest_Mikel
Дата 26.1.2003, 01:32 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











А система то какая.
ЗЫ: попробуй ExitWindowsEx(EWX_FORCE or EWX_SHUTDOWN,0)
  Вверх
December
Дата 26.1.2003, 09:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: нет
Всего: 57



Цитата
Привет!

Мне надо вырубить комп и я использую Exitwindowsex(ewx_force,0) но он делает logoff. А на
ewx_shutdown, ewx_reboot вообще никак не риагирует. подскажитеб что делать.
Спасибо.

P.S. Что это с форумом? smile.gif

Попробуй различные комбинации флагов. У меня под 98 флаги перегруза и выключения действуют наоборот, а под 2000 - вообще ни черта ни делают.


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
dr.ZmeY
Дата 26.1.2003, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Политолог
****


Профиль
Группа: Участник Клуба
Сообщений: 3892
Регистрация: 26.3.2002
Где: ..::STALINGRAD::. .

Репутация: нет
Всего: 60



ExitWindows(EW_RebootSystem, 0);


--------------------
PM MAIL WWW ICQ Skype   Вверх
Вася
Дата 27.1.2003, 04:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 27.12.2002

Репутация: нет
Всего: нет



Код
procedure ShutDownSystem;
var
Handle,Ph: THandle;
pid : DWORD;
luid : TLargeInteger;
priv : TOKEN_PRIVILEGES;
ver : TOSVersionInfo;
begin
ver.dwOSVersionInfoSize:=Sizeof(ver);
GetVersionEx(ver);
if ver.dwPlatformId=VER_PLATFORM_WIN32_NT then begin
pid:=GetCurrentProcessId;
ph := OpenProcess(PROCESS_ALL_ACCESS,false,pid);
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;
AdjustTokenPrivileges(handle,false,priv,0,nil,pid);
end;
end;
ExitWindowsEx(EWX_POWEROFF+EWX_FORCE ,0);
end;



Нашел:
ShutDown - ит и WinXP и 2000;

Это сообщение отредактировал(а) p0s0l - 29.9.2005, 12:34
PM MAIL   Вверх
Medved
Дата 27.1.2003, 06:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



Это ты Вася из Кулибы взял.

Вот оттуда еще один вариант:

Код

Procedure Shutdown(Name:String;   // Имя машины (\\SERVER)

Message:String;  // Сообщение
Delay:Integer;  // Задержка перед рестартом
Restart,CloseAll:Boolean);
var

ph:THandle;
tp,prevst:TTokenPrivileges;
rl:DWORD;
begin

OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,ph);
LookupPrivilegeValue(Nil,'SeShutdownPrivilege',tp.Privileges[0].Luid);
tp.PrivilegeCount:=1;
tp.Privileges[0].Attributes:=2;
AdjustTokenPrivileges(ph,FALSE,tp,SizeOf(prevst),prevst,rl);
InitiateSystemShutdown(PChar(name),PChar(Message),Delay,Restart,CloseAll);
ShowMessage(SysErrorMessage(GetLastError)); // Результат



--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

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

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0779 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.