Все про то же
Это не скроет проги в NT/XP, в сети публикуют только ответ на assembler, Предложите что-нить свежее..
function RegisterServiceProcess(dwProcessID: integer; dwType: integer): integer; stdcall; external 'kernel32.dll' name 'RegisterServiceProcess';
Это не скроет проги в NT/XP, в сети публикуют только ответ на assembler, Предложите что-нить свежее..
&)) Так ведь в WIN NT/2k/XP нельзя полностью скрыть процесс. Там все сделано грамотно...
&)) Так ведь в WIN NT/2k/XP нельзя полностью скрыть процесс. Там все сделано грамотно...
Ну тогда хотя бы как наиболее реально скрыть процесс, хотя бы от ламаков?
ведь его суют потоком к Exploreru, ставят всякие недокументированные свойства, записывают в специальные таблицы...
потом хрен найдешь, говорят, токо сыра на Дельфи мало ((
Ну тогда хотя бы как наиболее реально скрыть процесс, хотя бы от ламаков?
ведь его суют потоком к Exploreru, ставят всякие недокументированные свойства, записывают в специальные таблицы...
потом хрен найдешь, говорят, токо сыра на Дельфи мало ((
Я бы делал так - процесс, но без окон. Он визен только в раздеде processes. Если он будет висеть где-нить повыше, да иметь имя втоде "rundll.exe" или "sysmanage.exe", то никакой ломак в здравом уме на полезет хрякать твою программу. Да и если он нажмет End Process, то сперва товей программе прийдет событие завершение, и только если ты не отреагируешь и не выгрузишься за 5-20 секунд, то тебя кердыкнут экстренно. Поэтому за это время ты можешь открыть новый процесс, такой же :))
Я бы делал так - процесс, но без окон. Он визен только в раздеде processes. Если он будет висеть где-нить повыше, да иметь имя втоде "rundll.exe" или "sysmanage.exe", то никакой ломак в здравом уме на полезет хрякать твою программу. Да и если он нажмет End Process, то сперва товей программе прийдет событие завершение, и только если ты не отреагируешь и не выгрузишься за 5-20 секунд, то тебя кердыкнут экстренно. Поэтому за это время ты можешь открыть новый процесс, такой же :))
Я так делал еще на VB :) Это был мой любимый трюк. Но там к сожалению что-либо более серьезней сделать практически невозможно/либо не имеет смысла, потому перешел на Дельфи.
Недостаток такого метода в том шо даже ламаки уже точно знают какие проги у них должны быть в памяти, а тут будет две с такими именами. И к тому же, как погляжу почти все приворужились каким-нить процесс вьюером, а он, как извесно закроет, и не даст исполнить QERRYUNLOAD (По аналогии с VB, на дельфи до етого еще не добрался).
Сейчас вот рыскаю как приписаться потоком к Explorer'u..
Есть совет?? Буду очень признателен, особенно за сыр, тк еще отвыкаю от VB..
На форуме по билдеру по-моему, кто-то когда-то вывешивал dll с исходниками. Которая прячет процесс от TaskManager и ещё чего-то.
Можно заюзать NT-сервайсы (это как раз и есть аналог RegisterServiceProcess, точнее наоборот, RegisterServiceProcess - это слабый аналог сервайсов). В Дельфях для этого есть класс TService и TServiceApplication (начиная с версии 5 и кроме Standard version).