2010-03-22 2 views
0

Я делаю приложение, которое должно быть запущено и работает в любое время. (24/7) Я не очень искушен услугами, но я прочитал в Интернете, что услуги могут быть сделаны несовместимыми, установив для их свойства onclose значение false.Сделать сервисный монитор и перезапустить процесс

У меня есть служба мониторинга моего приложения, и сервис не может быть закрыт непосредственно из окна служб диспетчера задач ... но когда я нажимаю «перейти к процессу», диспетчер задач приводит меня к процессу службы породил. Оттуда я могу закрыть процесс и немедленно закрыть службу. Так как у меня мало опыта с услугами, о которых я спрашиваю, это нормальное поведение? Если нет, то как сделать службу неуязвимой?

+0

Почему вы должны сделать это? Я не уверен, что такой способ существует. Определенно, если я устанавливаю программное обеспечение на свою машину, я не хочу, чтобы он перезапускался, если я решил его убить. –

+0

Если вам нужно приложение для работы в любое время, почему бы просто не сделать его услугой? Затем он может работать, даже если никто не зарегистрирован. Есть ли какая-то причина, по которой вам нужно, чтобы это было приложение форм/окон? – Tony

+0

@ Тони, я думал, что ОП сделал службу, но не хотел, чтобы ее убили? –

ответ

0

Похоже, вам нужно что-то вроде Slife Teams, а затем использовать защиту Windows, чтобы предотвратить их уничтожение клиентского приложения.

Редактировать Если вы используете Windows 7 или Windows Server 2008 R2 может быть, вы можете использовать AppLocker?

Edit 2 Возвращаясь к ответу на исходный вопрос, один из способов было бы создать приложение для мониторинга, так что есть два запущенные процессы, как мониторинг, которые знают друг о друге.

Запустите два процесса, каждый с открытой рукояткой для другого процесса. Когда один процесс обнаруживается как убитый, другой процесс немедленно перезапускает его и наоборот.

Вам необходимо будет обрабатывать обычные сообщения об отключении системы.

Или ... есть чтение этой статьи: Process Invincibility

+0

Руткит? Ты должно быть шутишь. –

+0

Лично я бы не использовал его, но я думал, что включу его в свой ответ за полноту. :) – Tony

+0

Да, спасибо за anwser, но руткиты - это не вариант :) – Andrej

Смежные вопросы