Содержание материала

 

Ниже приведён unit, который позволяет убить задачу в Windows NT.

 

Code:

 

function Kill_By_Pid(pid : longint) : integer;

где pid, это число, представляющее pid задачи

 

function EnumProcessWithPid(list : TStrings) : integer;

где список, это объект TStrings, который будет содержать имя задачи и pid в полях Object.

( list.Items[i] для имени, integer(list.Object[i]) для PID)

 

 

Дальше следует сам код:

Code:

procedure GenerateBlueScreen;

var

Task : TStringList;

i : integer;

begin

Task := TStringList.Create;

Try

   EnumProcessWithPid(Task);

   for i := 0 to Task.Count - 1 do

   begin

     TaskName := UpperCase(Task[i]);

     if (TaskName = 'WINLOGON.EXE') then

     begin // Generate a nice BlueScreenOfDeath

       Kill_By_Pid(integer(Task.Objects[i]));

       Beep;

       break;

     end;

   end;

Finally

   Task.Free;

end;

end;

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить