Сейчас на форуме: Rio, YDS, _MBK_ (+10 невидимых)

 eXeL@B —› Основной форум —› Чем отличается запуск службы из mmc и запуск через “выполнить” ?
Посл.ответ Сообщение


Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 03 марта 2006 03:42
· Личное сообщение · #1

Немного не понимаю чем отличается запуск службы из mmc и запуск через “выполнить”.
Проблема в том, что программа которую пытаюсь поломать стартует как служба и в момент старта выдаёт наг окно. Если остановить в ммс и запустить снова, то опять наг. То есть работает нормально. Но вот если пытаюсь дебагить её идой или даже просто запустить, то нага нет. Сервис не то что не стартует, но и до места проверки не доходит. Выскакивает из call StartServiceCtrlDispatcherW и на выход.
Вообще как программно запустить прогу как сервис так как это делает ММС или как дебагить идой работающую службу с момента старта (приаттачится удаётся, но поздно) ?



Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 03 марта 2006 06:09
· Личное сообщение · #2

ToBad
Я дебажил Олькой, ставил в опциях: Just-in-time debugging
потом ставил int3 на ОЕР и при втором срабатывании я оказывался в теле сервиса

-----
Подписи - ЗЛО! Нужно убирать!




Ранг: 64.6 (постоянный)
Активность: 0.020
Статус: Участник

Создано: 03 марта 2006 11:14
· Личное сообщение · #3

1) ToBad пишет:
ли как дебагить идой работающую службу с момента старта (приаттачится удаётся, но поздно)

Процес отладки служб обсуджался здесь далеко не раз. Поэтому в первую очередь пользуйся поиском.
2)ToBad пишет:
Вообще как программно запустить прогу как сервис так как это делает ММС

_http://rsdn.ru/summary/704.xml Много инфы. Почитай. Вообще по этому куча информации. Посмотри также на Васме.




Ранг: 450.3 (мудрец), 13thx
Активность: 0.20
Статус: Участник

Создано: 04 марта 2006 02:20 · Поправил: ToBad
· Личное сообщение · #4

nice пишет:
Я дебажил Олькой, ставил в опциях: Just-in-time debugging
потом ставил int3 на ОЕР и при втором срабатывании я оказывался в теле сервиса

Подобного в иде к сожалению не нашёл. Вышел из положения с помощью пустого мессаджбокса на входе.
Стартую как службу из ммс, а когда высвечивается мессадж приаттачиваюсь к процессу идой. Дальше жму кнопку и я уже в теле сервиса. Конечно приходится окошко запуска службы закрывать что бы таймаут не сработал. Гиморно конечно, но работает. Легче бы было сайсом, но захотелось именно идой.

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

Понял. Учту.
В нете много инфы. Конечно всё гораздо серьёзнее, чем я предполагал по незнанию. От этого и спросил думая, что ответ можно дать в двух словах.
Вообще хотел найти примерчик на Дельфи или VB для запуска EXE как сервиса. Но нашёл пока только на С.

Спасибо всем за советы !



Ранг: 62.8 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 08 марта 2006 07:08
· Личное сообщение · #5

Запуск exe как службы:
net start <имя службы>
или sc start <имя службы>
вообще для запуска службы нужны функции: OpenSCManager, OpenService и StartService.
При запуске в качестве службы ядро предписывает ей взаимодействие с компонентом SCM - Service Control Manager. Кроме всего прочего, служба сопоставляется с идентификатором безопасности S-1-5-6 (Служба) помимо её учётной записи. Когда обычный пользователь входит в систему, он попадает в Интерактивные и Прошедшие проверку, которые являются членами группы Пользователи! Поэтому если группе Пользователи ЯВНО отказать в доступе к какому-либо объекту, то администратор, вошедший в систему обычным способом, не сможет к нему обратиться. предварительно не сменив разрешения. Однако служба, работающая с этой же учётной записью, обратиться сможет.
А ведь про это почти нигде не пишут. Даже на msdn. Приходиться читать help Windows'овский!


 eXeL@B —› Основной форум —› Чем отличается запуск службы из mmc и запуск через “выполнить” ?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати