Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.04.20;
Скачать: [xml.tar.bz2];

Вниз

Несколько вопросов по сервисам начинающего   Найти похожие ветки 

 
Strate   (2008-03-25 19:44) [0]

Доброго всем времени суток.

Я хочу написать сервис, а точнее переделать уже существующее приложение в сервис. С сохранением функционала как сервиса, так и обычно-запускаемого приложения. Пока что вроде всё получается, возникло несколько вопросов.

Всем известно, что сервисы в автоматическом режиме запуска запускаются до входа юзера в систему. Отсюда вопрос: Если сразу при запуске сервиса создать окно, оно создастся или как? Возможно ли как то из под сервиса отловить, вошёл ли юзер в систему? Мне нужно чтобы запустился он до логона, а после логона пихнулась иконка в трей, открылось ещё окошко ну итд...

Спасибо за ответы, ну или киньте ссылкой где про всё это доступно можно почитать.

P.S. Заводить отдельный exe чисто для сервиса не хочу.


 
Сергей М. ©   (2008-03-25 20:11) [1]


> Если сразу при запуске сервиса создать окно, оно создастся
> или как?


Нахрена сервису окно ? Начнем с этого ..


 
Strate   (2008-03-25 20:21) [2]

Сергей М. ©   (25.03.08 20:11) [1]

мм.. внутри сервис должен обрабатывать оконные сообщения, в частности нажатия по значку в трее. Но это при логоне.


 
tesseract ©   (2008-03-25 20:24) [3]


> мм.. внутри сервис должен обрабатывать оконные сообщения,
>  в частности нажатия по значку в трее.


Это делаеться не в сервисе, а в  стороннем приложении. Иначе сервис захапает 90% процессорного времени.


 
Сергей М. ©   (2008-03-25 20:27) [4]


> Но это при логоне


Логон здесь ни причем.
Причем здесь десктоп, а не логон.


> должен обрабатывать оконные сообщения


Никому он ничего не должен.
Окно и оконные сообщения - епархия аппликаций и апплетов, а не сервисов.


 
Strate   (2008-03-25 20:28) [5]

tesseract ©   (25.03.08 20:24) [3]

Странно. У меня ничего не хапается и сейчас всё нормально обрабатывается.

Кстати в аутпосте тоже ничего не хапается, сделано также, всё в одном exe.


 
Strate   (2008-03-25 20:31) [6]

Сергей М. ©   (25.03.08 20:27) [4]

Т.е. я так понимаю что делать связку сервис+ещё одно прилоежние и связывать их?

Каким тогда образом CCProxy умеет работать как серсивом так и обычной аппликацией, каким образом Outpost Firewall работает и как сервисом и как аппликацией?


 
Strate   (2008-03-25 20:32) [7]

Мне надо то всего как то из под сервиса отловить момент входа юзера в систему.


 
Сергей М. ©   (2008-03-25 20:34) [8]


> в аутпосте тоже ничего не хапается, сделано также, всё в
> одном exe.


Не трынди.
Аутпост в ипостаси сервиса (по барабану из какого ехе он вылупился при старте) не создает окон и иконки в трей тоже не запуздыривает.


 
palva ©   (2008-03-25 20:34) [9]

> Если сразу при запуске сервиса создать окно, оно создастся или как?
Если сервису разрешено общаться с рабочим столом, то создастся. В противном случае возможно, что и создастся, но видно его не будет.
Также будут видны окна, сообщающие об ошибках старта сервисов.


 
Сергей М. ©   (2008-03-25 20:35) [10]


> Мне надо то всего как то из под сервиса отловить момент
> входа юзера в систему

Надо так надо. Лови. Но причем здесь окна и трей ?


 
Strate   (2008-03-25 20:40) [11]

Сергей М. ©   (25.03.08 20:34) [8]
Не трынди.
Аутпост в ипостаси сервиса (по барабану из какого ехе он вылупился при старте) не создает окон и иконки в трей тоже не запуздыривает.


Мде? Вот 5 минут назад попытался остановить службу Agnitium Outpost Firewall, он меня спросил хочу ли я так поступить, при этом создав окно с сообщением. После этого запустил службу, и каким то чудом запузырилась иконка в трей.

Возможно я не знаю чегото такого просервисы, что знаете Вы? Может лучше просвятить меня, чем говорить "не трынди"? Я со всеми знаниями о программинге не рождался сразу.


 
Сергей М. ©   (2008-03-25 20:47) [12]


> он меня спросил



> 5 минут назад попытался остановить службу Agnitium Outpost
> Firewall


Ты ее, наверно, пытался остановить тыкая мышью иконку в трее ?
Сообщения от этой иконки обрабатываются оконной ф-цией аппликации или апплета, в результате обработки сервису передается команда на закругление.


> запустил службу, и каким то чудом запузырилась иконка в
> трей.


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


 
Strate   (2008-03-25 20:53) [13]

Хорошо. Тогда поставим вопрос по другому.

Как из-под сервиса отловить момент входа юзера в систему?

P.S. Службу останавливал через оснастку MMC "Службы"


 
Strate   (2008-03-25 20:54) [14]

P.S. Использую делфёвый TService


 
Сергей М. ©   (2008-03-25 20:57) [15]


> Как из-под сервиса отловить момент входа юзера в систему?


Это совсем другой коленкор.

На эту тему ИШ, пожалуй, даст тебе более профессиональную консультацию.


> Службу останавливал через оснастку MMC "Службы"
>


Опять же не факт, что диал.окно было создано именно процесом сервиса.

Сервис мог известить о поступившей ему команде на закругление тому самому апплету или аппликации, которые, в свою очередь, создали то самое окно.


 
Сергей М. ©   (2008-03-25 20:57) [16]


> Использую делфёвый TService
>


Не суть как важно.


 
Strate   (2008-03-25 21:00) [17]

Сергей М. ©   (25.03.08 20:57) [16]
Не суть как важно.


Ну не знаю, я просто всей кухни то не вижу... Оболочку только.

Сергей М. ©   (25.03.08 20:57) [15]
Сервис мог известить о поступившей ему команде на закругление тому самому апплету или аппликации, которые, в свою очередь, создали то самое окно.


Ну, акромя outpost.exe ничего замечено не было.


 
Сергей М. ©   (2008-03-25 21:02) [18]


> Оболочку только


На то и оболочка.


> акромя outpost.exe ничего замечено не было


Ничто не мешает в контексте одного и дого же процесса одновременно "жить" и сервису и обычной аппликации.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.04.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.107 c
15-1204977441
alex
2008-03-08 14:57
2008.04.20
Посоветуйте компонент...


15-1204872820
ANB
2008-03-07 09:53
2008.04.20
Отправить почту через MS Exchange


2-1206519435
dumka
2008-03-26 11:17
2008.04.20
БД и INET


2-1206598545
Миша
2008-03-27 09:15
2008.04.20
Отправить файл на E-Mail


15-1204749799
Triton5
2008-03-05 23:43
2008.04.20
Простая программа, которая делает скрины экрана...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский