Системная служба
всем спасибо за помощь
диспетчер задач не позволяет завершить только те службы после завершения которых система перезагрузится
а если ты сам напишешь приложение которое будет завершать эти процессы и ничто твоей программе не будет мешать завершить их, только потом комп будет перезагружаться
это реализовано.
Еще как можно! Только не понятно как
У меня никак не получается!
потому что это сам по себе диспетчер задач такой!!!!
если служба называется lsass.exe winlogon.exe smss.exe( и ещё пару штук) он просто не разрешает её завершить
может тогда сделать так, чтобы диспетчер задач не видел этой службы, то бишь твоей программы, которая запущена как системная служба, - он (диспетчер задач) тогда и завершить её не сможет.
"может тогда сделать так, чтобы диспетчер задач не видел этой службы, то бишь твоей программы, которая запущена как системная служба, - он (диспетчер задач) тогда и завершить её не сможет"
Ответ:Kosfiz,слышишь я тут знаю как сделать чтобы прогу было не видно в диспетчере задач,но ее не видно в приложениях,а в процессах видно.Не подскажешь мне как сделать чтоб ее в процессах не было видно.Я пользуюсь таким кодом:
-------------------------------------------------------------------------
ShowWindow(Handle, SW_HIDE);
ShowWindow(Application.Handle,SW_Hide);
-------------------------------------------------------------------------
-------------------------------------------------------------------------
ShowWindow(Handle, SW_HIDE);
ShowWindow(Application.Handle,SW_Hide);
-------------------------------------------------------------------------[/quote]
такой функцией ты просто убираешь свою программу из панели
чтобы твоей программы не видел диспетчер задач надо перехватывать апи функции с помощью которых процессы получают список процессов -то есть toolhelp функции
че это ты меня в цитате написал, я такого не предлагал, я как раз и имел в виду процесс прятать, а не окно.
[quote=ahilles]чтобы твоей программы не видел диспетчер задач надо перехватывать апи функции с помощью которых процессы получают список процессов -то есть toolhelp функции[/quote]
toolhelp, как и EnumProcess обращаются к ZwQuerySystemInformation или NtQuerySystemInformation.
kastron
это ты просто окошко прячешь, а чтоб спрятать процесс надо действительно перехватывать API функции(смотри выше какую). если хочешь узнать о перехвате по-подробнее, то можно почитать статьи ms-rem'а и вроде бы он написал dll с помощью, которой можно осуществлять перехват(об этом точно не помню). также на глаза мне попадался исходник от yoda, демонстрирующий перехват как раз нужной тебе функции, но там и драйвер писать надо и на асме все, хотя вкурить можно(если асм хоть немного знаешь и желание большое), на самом деле все расписано в readme по-английски, так что если нужно могу выслать или выложить здесь. а вообще перехват - это довольно сложный вопрос.
че это ты меня в цитате написал, я такого не предлагал, я как раз и имел в виду процесс прятать, а не окно.[/quote]
Посмотри внимательней на своё сообщение и мою цитату!
да просто спросил: без претензий.
ms-rem перехватывал её и функции создания процессов (вернее функцию создания потока) для того что бы перехватывать во вновь созданный процессах
ну тогда точно надо смотреть исходник от yod'ы.
да просто спросил: без претензий.[/QUOTE]
Ну надо же как-то отвечать на вопросы!
Вот :)