Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вход пользователей, API 
:(
    Опции темы
Springtime
Дата 18.4.2009, 00:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 221
Регистрация: 25.10.2006
Где: Россия, Тюмень

Репутация: нет
Всего: 2



Всем привет.
С помощью каких API функций можно отследить что пользователь вошел в систему, а также вышел. Т.е. logon\logoff

Наверное вопрос покажется тривиальным, но суть в том что GINE тут не поможет, т.к. нужна поддержка в Windows Vista
и реализовать надо в виде службы запускаемой из-под LocalSystem.
Желательно что было в виде события, не зависимо от WMI и Журнала. Т.е. чтобы сервис не опрашивал каждую секунду
вошел ли пользователь или нет.
--------------------
ICQ: 1fe410f46e7f48f6c721bc866d8294a2
PM MAIL ICQ   Вверх
yeputons
  Дата 19.4.2009, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 5



Сам интересовался таким вопросом. В Windows Vista по моим данным остался лишь один способ отслеживания событий Logon/Logoff - групповые политики, в которых можно настроить скрипты Logon и Logoff.

Т.о. можно вынести часть кода Вашего сервиса в отдельный exe-файл и запускать его из Logon/Logoff скрипта. А т.к. он будет исполнятся из процесса System, то можно:
1)делать все, как в сервисе
2)обрубить права на чтение и исполнение этого файла всем пользователям, кроме SYSTEM, чтобы исключить некоторые попытки подделки. 

Если же Вам требуется обмениваться какими-то данными с основным сервисом, то могу порекомендовать использовать Named Pipes. Если Вы не сможете с ними разобраться (всё описано в MSDN с примерами), могу помочь.

PM MAIL ICQ Skype   Вверх
xvr
Дата 20.4.2009, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 40
Всего: 223



А Winlogon Notification Packages тоже под Вистой не работает? Вроде MSDN по этому поводу ничего не говорит  smile 

Увы, говорит - убрали. Но все же что то осталось:
Цитата

Using Service Control Manager (SCM) Notifications - http://go.microsoft.com/fwlink/?LinkID=70746
Using the System Event Notification Service (SENS) - http://go.microsoft.com/fwlink/?LinkId=70745



Это сообщение отредактировал(а) xvr - 20.4.2009, 16:57
PM MAIL   Вверх
yeputons
Дата 20.4.2009, 18:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 5



xvr

Цитата
Using Service Control Manager (SCM) Notifications
 нетути. Creating a service and using SCM notifications will not only work in Windows Vista, but also the same solution will work in Windows XP and Windows Server 2003 environments

Цитата
Using the System Event Notification Service (SENS)
 то же самое Creating a new application using SENS will not only work in Windows Vista

Источник - http://technet.microsoft.com/ru-ru/library/cc721961.aspx

Либо я прав, либо я не умею читать и парсить английский язык, либо MSDN противоречит сам себе)))


PM MAIL ICQ Skype   Вверх
xvr
Дата 20.4.2009, 19:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 40
Всего: 223



Второе - перевожу:
Цитата

Creating a service and using SCM notifications will not only work in Windows Vista, but also the same solution will work in Windows XP and Windows Server 2003 environments

Создание сервиса и использование SCM работает НЕ ТОЛЬКО в Windwos Vista, но так же и в Windows XP и в Windows 2003
Цитата

Creating a new application using SENS will not only work in Windows Vista
Создание новых приложений с использованием SENS работает НЕ ТОЛЬКО в Windows Vista ...

not only work != not work
PM MAIL   Вверх
yeputons
Дата 20.4.2009, 20:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 77
Регистрация: 1.4.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 5



+1. Поклон тебе низкий.
PM MAIL ICQ Skype   Вверх
Springtime
Дата 21.4.2009, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 221
Регистрация: 25.10.2006
Где: Россия, Тюмень

Репутация: нет
Всего: 2



http://download.microsoft.com/download/3/b...0Deployment.doc

SENS как я понял в висте тоже не работает.
--------------------
ICQ: 1fe410f46e7f48f6c721bc866d8294a2
PM MAIL ICQ   Вверх
xvr
Дата 21.4.2009, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 7046
Регистрация: 28.8.2007
Где: Дублин, Ирландия

Репутация: 40
Всего: 223



Цитата(Springtime @ 21.4.2009,  12:41)
http://download.microsoft.com/download/3/b...0Deployment.doc

SENS как я понял в висте тоже не работает.

Ты неправильно понял - SENS в Vista работает:
Цитата

Creating a new application using SENS will not only work in Windows Vista, but also the same solution will also work in Windows 2000, Windows XP, and Windows Server 2003 environments. 

Мы это уже обсуждали вроде  smile 
PM MAIL   Вверх
Springtime
Дата 21.4.2009, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 221
Регистрация: 25.10.2006
Где: Россия, Тюмень

Репутация: нет
Всего: 2



в общем ещё есть WTSRegisterSessionNotification

но только не ниже Windows XP
--------------------
ICQ: 1fe410f46e7f48f6c721bc866d8294a2
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0562 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.