|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Приложение и службы
Кто-нибудь знает как один и тот же Exe-файл можно запустить как приложение и как службу (но запуск в качестве службы с каким-нибудь ключом, например).
Расскажите, дайте ссылку, пожалуйста. |
#2
|
||||
|
||||
http://www.interface.ru/home.asp?artId=16705
Первая ссылка в гугле. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
Эту ссылку я прочитал в первую очередь.
Есть необходимость запускать один и тот же Exe-файл как службу и как приложение. а если мы выбираем проект Service Application то проект сразу же становится службой |
#4
|
||||
|
||||
http://fssr.ru/hz.php?name=News&file=article&sid=8086
В блоке begin - end пиши условие запуска как сервиса и как приложения. Кстати, вот более толковый пример от _Rouse: http://rouse.drkb.ru/winapi.php (Доступ из сервиса к рабочему столу). З.Ы. По запросу "delphi сервис api" можно найти более грамотные исходники. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию Последний раз редактировалось M.A.D.M.A.N., 24.07.2011 в 12:51. |
#5
|
|||
|
|||
Привет форумчанам!. помогите плиз. не могу никак сообразить и подобрать процедуры. мне требуется: найти процесс .т.е. узнать запущен он или нет. Если запущен то убить его и удалить ехе-файл процесса. проблема в том что о этом процессе я знаю (т.е. эти параметры статические) только Название окна принадлежащему этому процессу и Описание ехе-файла(Свойство=>Описание). заранее спс
|
#6
|
||||
|
||||
Программно - курим API, ищем соотв. функции. Как пример - FindWindow может найти окно по заголовку. Где-то здесь кажется был пример, как по Handle окна получить Handle процесса. Ну или в гугеле.
Руками - качаем чего-нибудь типа ProcessExplorer и радуемся. jmp $ ; Happy End! The Cake Is A Lie. |
#7
|
|||
|
|||
найти процесс по hWND я знаю как. я уже написал часть кода, кстати через функцию FindWindows. в обычном приложении все работает как надо. но стоит только воспользоваться функцией FindWindows в сервисе она возвращает 0. и тут никак не могу эту проблему обойти, столько сайтов облазил, но рабочего решения так и не нашел. я зная что службы и пользователи работают на разных как бы рабочих столах и связи если не ошибаюсь между ними нет.
а мне позарез нужно получить handle чужого окна именно из службы ... |
#8
|
||||
|
||||
Служба не может взаимодействовать с рабочим столом (в XP еще можно было), если только из службы запускать некий экзешник от имени пользователя.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#9
|
|||
|
|||
Код:
GetWindowThreadProcessId() |
#10
|
|||
|
|||
черт! я хотел использовать эту функцию но для нее нужно знать Handle окна, а так как он динамический его отследить в службе никак, для этого мне и нужно было взаим. с рабочим столом. Придется делать черз дополнительный ехе-шник, но как его скрыть от Диспетчера Задач или хотябы запретить завершение этого ехе-шника?
|
#11
|
||||
|
||||
Цитата:
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#12
|
|||
|
|||
а что это KernelMode Driver, можно поподробнее. и если возможно примерчик. плз
|
#13
|
|||
|
|||
Цитата:
Что за глупые идеи, скрыть от Диспетчера Задач или хотябы запретить завершение этого ехе-шника? Зачем это? |
#14
|
||||
|
||||
[OFFTOP]Опять вредонос? Да сколько можно, плодят всякие недовирусы...[/OFFTOP]
Зачем прятать процесс? Пользователь должен знать, что на его компе делается. И иметь контроль над всеми прогами. jmp $ ; Happy End! The Cake Is A Lie. |
#15
|
||||
|
||||
Не пора ли Admin-у, банить таких голубчиков? Уж слишком много их расплодилось.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |