Если кому интересно, отрыл исходник dll на Object Pascal, которая скроет Ваше проложение от Task Manager'a и других программ, использующих для получения списка процессов функцию NtQuerySystemInformation из ntdll.dll (соответственно, пашет только на NT-системах). Проверил ток что на XP_sp2, работает отлично
Вес dll, если компилить без оптимизаций через Delphi7 42 кило.
Мда, забыл сказать, как использовать
Итак, нужно вызвать функцию HideProcess:
Код:
function HideProcess(pid: DWORD; HideOnlyFromTaskManager: BOOL): BOOL,
где pid - идентификатор процесса, который нужно спрятать, а HideOnlyFromTaskManager - нужно ли прятать процесс только от TaskManager
Пример:
Код:
program SuperHide;
function HideProcess(pid: DWORD; HideOnlyFromTaskManager: BOOL): BOOL; stdcall; external 'nt_hide.dll';
begin
HideProcess(GetCurrentProcessId, false); // прячем текущий процесс
... // весь остальной код
end.
извиняйте, если что-то подобное было уже, не на все хватило терпения прочитать. Если это повтор, сообщите, я удалю пост