Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];

Вниз

Выключение или перезагрузка компа через ExitWindowsEx?   Найти похожие ветки 

 
WhiteBarin ©   (2006-11-17 13:59) [0]

Проблема в том что на одном компе работает на другом нет из-зи чего может быть это?


 
Elen ©   (2006-11-17 14:00) [1]


> WhiteBarin

Как вызывается? где?


 
Джо ©   (2006-11-17 15:04) [2]

> из-зи чего может быть это?

Много из-за чего. Например, из-за разных ОС. В 98 дескриптор безопасности можно не получать, в NT — обязательно.
Лучше свой код покажи, укажут где ошибка.


 
clickmaker ©   (2006-11-17 15:14) [3]

кроме того, привилегии нужны процессу, чтоб погасить винду или комп.
см. AdjustTokenprivileges
Кстати, в Инете много примеров на эту тему


 
WhiteBarin ©   (2006-11-20 09:34) [4]

Вызывается просто по нажатию кнопки
Перезагрузить
ExitWindowsEx(ewx_reboot,0);
Выключить
ExitWindowsEx(ewx_shutdown,0);
Все в одной ОС WinXP. А вот про привилегии не знал, как все это реализовать чтобы везде работало, т.е. на всех компах с XP


 
Dmitrij_K   (2006-11-20 10:45) [5]

В гугл товарищЪ


 
HF-Trade ©   (2006-11-20 18:18) [6]

procedure PowerOff(Flags: UINT);
var
tokenPriv: TTokenPrivileges;
tokenHandle: THandle;
begin
if (Win32Platform = VER_PLATFORM_WIN32_NT) and
((Flags and (EWX_POWEROFF or EWX_REBOOT or EWX_SHUTDOWN)) <> 0) then
begin
if OpenProcessToken(GetCurrentProcess,TOKEN_ADJUST_PRIVILEGES,
TokenHandle) then begin
if LookupPrivilegeValue(nil,"SeShutdownPrivilege",
TokenPriv.Privileges[0].LUID) then
begin
TokenPriv.PrivilegeCount:=1;
TokenPriv.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
if not AdjustTokenPrivileges(TokenHandle,false,TokenPriv,0,
TTokenPrivileges(nil^),DWORD(nil^)) then exit;
end;
end;
end;
ExitWindowsEx(Flags, 0);
end;

Перезагрузка -
PowerOff(EWX_REBOOT);
Выключение -
PowerOff(EWX_ShutDown);



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

Форум: "Начинающим";
Текущий архив: 2006.12.10;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.043 c
2-1164186409
--= Eagle =--
2006-11-22 12:06
2006.12.10
заменить текст чекбокса в OpenDialog


3-1160042495
Kolan
2006-10-05 14:01
2006.12.10
А есть ли станодарт оформления кода на SQL?


2-1164199959
Галинка
2006-11-22 15:52
2006.12.10
Можно ли узнать модификатор свойств компонента


1-1160999176
nikola233
2006-10-16 15:46
2006.12.10
MSDOS or Windows


3-1159857916
Megabyte
2006-10-03 10:45
2006.12.10
Можно ли прописать алиас без перезапуска сервера?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский