Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Службы
Форум на CrossPlatform.RU > Библиотеки > Другие библиотеки
bigory
Всем доброе время суток!
Мне нужно создать сервис (службу), который будет обмениваться информацией с сервером в сети рабочей группы, в тот момент, когда компьютер ожидает ввода пароля для входа в систему.
Для начало хотел бы узнать как написать этот сервис для клиентской машины и программу для сервера. Пусть будет самый простой пример, где этот клиент посылает серверу строку любого сообщения
Алексей1153
по-моему, тут необходимо обозначить ОС :)
Iron Bug
да, действительно. смотря под какой осью.
хотя... если "службы" - то, скорее всего, венда.
а если венда, то отличный и простой пример мелкого сервиса - программа ReXeCutioner. это буквально один-два файла. на сорцфорже лежит код его потомка (TheGrimLinker), который посложнее, но там есть и исходники ReXeCutioner'а: http://sourceforge.net/projects/thegrimlinker/files/
ReXeCutioner ставится сервисом на машину и позволяет удалённо цепляться к нему из консоли другой машины, запуская на удалённой машине любые программы и выводя в локальную консоль содержимое консоли на удалённой машине. там как раз пример сервиса, и пайпов, и всего остального.
есть ещё более ранний вариант: xCmd (http://www.codeguru.com/cpp/i-n/network/remoteinvocation/article.php/c5433/). это "предок" ReXeCutioner'а. Он ещё примитивнее.

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

P.S. да, к QT это не имеет никакого отношения. ибо просто системная фича, к тому же вовсе не кроссплатформенная.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.