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

Вниз

Неужели в Windows 2000/XP не выключить питание?   Найти похожие ветки 

 
Hanson3003   (2002-11-29 09:50) [0]

ExitWindowsEx и InitiateSystemShutDown не работают.


 
Слесарь Матерящийся   (2002-11-29 10:52) [1]

Как не работают? Из меню Пуск её можно выключить -- значит, работают!


 
Song   (2002-11-29 11:06) [2]

Надо права иметь соответствующие.


 
Ich Hasse   (2002-11-29 20:15) [3]

Конечно же можно, как? Вот как:


program shutdown;
uses Windows, messages;

procedure ShutSystem;
var
handle_: THandle;
n: DWORD;
luid: TLargeInteger;
priv: TOKEN_PRIVILEGES;
ver: TOSVERSIONINFO;

begin
ver.dwOSVersionInfoSize := Sizeof(ver);
GetVersionEx(ver);
if ver.dwPlatformId=VER_PLATFORM_WIN32_NT then begin
if OpenProcessToken(GetCurrentProcess, 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, n);
end
else writeln("Ошибка")
else writeln("Ошибка ");
end
else writeln("Ошибка ");
if not ExitWindowsEx(EWX_POWEROFF,1)
then writeln("Ошибка"); end;

begin
ShutSystem;
end.



Вот именно то, что тебе надо, проверял работает и в 2K и в XP;


 
Hanson3003   (2002-11-30 13:43) [4]

Спасибо. Победил



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

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

Наверх




Память: 0.44 MB
Время: 0.009 c
3-48947
Nickolaus
2002-12-21 23:12
2003.01.16
Не подключиться к Interbase 6.5 из cgi


14-49220
Кот Бегемот
2002-12-29 17:43
2003.01.16
Всех с Новым Годом :)))))


3-48856
silenser
2002-12-19 14:51
2003.01.16
как найти время?


6-49185
Captain
2002-11-10 12:55
2003.01.16
Обновляемый список компьютеров в сети


1-49157
Mik.rob
2003-01-06 00:47
2003.01.16
Глупый вопрос





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский