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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> В чём ошибка? 
:(
    Опции темы
maza
  Дата 11.7.2004, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Господа, не могу разобраться, подскажите, в чём тут ошибка? Может вызываю не правиль?
Сильно не смейтесь, только учусь ;)

Функция:
Код
function ProcessTerminate(dwPID:Cardinal):Boolean;
var
 hToken:THandle; 
 SeDebugNameValue:Int64;
 tkp:TOKEN_PRIVILEGES; 
 ReturnLength:Cardinal;
 hProcess:THandle; 
begin
 Result:=false;
 if not OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES
  or TOKEN_QUERY, hToken ) then 
    exit;
 if not LookupPrivilegeValue( nil, 'SeDebugPrivilege', SeDebugNameValue )  
  then begin
   CloseHandle(hToken); 
   exit;
  end; 
 tkp.PrivilegeCount:= 1; 
 tkp.Privileges[0].Luid := SeDebugNameValue;
 tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
 AdjustTokenPrivileges(hToken,false,tkp,SizeOf(tkp),tkp,ReturnLength);
 if GetLastError()<> ERROR_SUCCESS  then exit;
 hProcess := OpenProcess(PROCESS_TERMINATE, FALSE, dwPID);
 if hProcess =0  then exit; 
   if not TerminateProcess(hProcess, DWORD(-1)) 
    then exit;
 CloseHandle( hProcess );
 tkp.Privileges[0].Attributes := 0;
 AdjustTokenPrivileges(hToken, FALSE, tkp, SizeOf(tkp), tkp, ReturnLength);
 if GetLastError() <>  ERROR_SUCCESS
  then exit;
 Result:=true;
end;


P.S. нужно сделать вызов данной функции и завершить определённый системный (!) процесс 8)

Это сообщение отредактировал(а) p0s0l - 29.9.2005, 11:21
PM MAIL   Вверх
Albinos_x
Дата 11.7.2004, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



Попробуй дать название функции другое, т. к. есть функция АПИ с таким именем , может , поэтому вызывается ошибка


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
December
Дата 11.7.2004, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


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

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



А какая ошибка-то?


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


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

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



Дык тут не ошибка, то что написано - правильно (но может надо еще что-нить делать кроме установки привилегии), просто винда не даёт завершить системные процессы, по-крайней мере у меня OpenProcess (PROCESS_TERMINATE...) делается, но TerminateProcess выдаёт "Acess is denied". Хотя вроде раньше как-то завершались системные процессы...



--------------------
С уважением, г-н Посол.
PM   Вверх
maza
Дата 12.7.2004, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Может есть альтернатива?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.

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


 




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


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

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