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

Вниз

LockStation и PowerOff в NT4   Найти похожие ветки 

 
-=GaLaN=- ©   (2004-01-23 13:54) [0]

У меня два вопроса.
1) Каким образом можно сделать LockStation в NT4 программно? Вызов

ShellExecute(0, "open", Pchar("rundll32.exe"), Pchar("USER32.DLL,LockWorkStation"), nil, SW_ShowNormal);

не помогает, ибо такая функция есть только в NT5 и выше. Но ведь сам windows может сделать LockStation! Как?
2) Перед вызовом:

ExitWindowsEx(EWX_SHUTDOWN or EWX_POWEROFF, 0);

как обычно получаем привелегии:

procedure GetPriv;
var
hToken: THandle;
tkp: TTokenPrivileges;
tkpo: TTokenPrivileges;
zero: DWORD;
begin
 zero:=0;
 if not OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then begin
   MessageBox(0, PChar("Error"), "OpenProcessToken() Failed", MB_OK );
   Exit;
 end;
 if not OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken) then begin
   MessageBox(0, PChar("Error"), "OpenProcessToken() Failed", MB_OK );
   Exit;
 end;
 if not LookupPrivilegeValue(nil, "SeShutdownPrivilege", tkp.Privileges[0].Luid) then begin
   MessageBox(0, PChar("Error"), "LookupPrivilegeValue() Failed", MB_OK );
   Exit;
 end;
 tkp.PrivilegeCount:=1;
 tkp.Privileges[0].Attributes:=SE_PRIVILEGE_ENABLED;
 AdjustTokenPrivileges(hToken, False, tkp, SizeOf(TTokenPrivileges), tkpo, zero);
end;

И все это прекрасно работает в том случае, если запуск идет от Администратора или пользователя с его правами. Но если прав администратора нет, завершение работы не работает, несмотря на то, что сама Windows через Turn Off Computer может компьютер выключить. Как же быть?


 
-=GaLaN=- ©   (2004-02-07 15:48) [1]

Странно. Неужели проблемы _невозможно_ решить?


 
-=GaLaN=- ©   (2004-02-13 16:19) [2]

Мда... :(



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

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

Наверх





Память: 0.44 MB
Время: 0.032 c
1-1081024810
Arturchik
2004-04-04 00:40
2004.04.18
А как закрывая окно крестиком выполнить что-нибудь?


8-1072167253
Василич
2003-12-23 11:14
2004.04.18
вывод синуса,звука на выход звуковой карты


1-1081066809
DADUD
2004-04-04 12:20
2004.04.18
Показать картинки в TWebBrowser


3-1079866012
Девушка
2004-03-21 13:46
2004.04.18
Conversion string error from string


14-1080132427
Dmitriy O.
2004-03-24 15:47
2004.04.18
Во я крут !





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