Обсуждение вопросов, связанных с написанием и адаптированием приложений для компьютеров с несколькими рабочими местами. Специфика, новые возможности, ограничения.
Модератор: AsterMaster
-
Сервисы
Сообщение
Сервисы » Вс янв 11, 2009 15:12
Здравствуйте!
Подскажите как заставить сервис "увидеть" (подключиться) рабочие столы всех терминалов а не только первого?
-
AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
-
Контактная информация:
Сообщение
AsterMaster » Пн янв 12, 2009 3:00
Пожалуйста, пишите подробнее: о каком сервисе идет речь, и что по отношению к нему означает "увидеть" рабочие столы.
-
Sedov
Сообщение
Sedov » Пн янв 12, 2009 7:15
Собственный сервис.
Задача следующая: необходимо чтоб сервис мог подключиться терминалу и отправить сообщение приложению (окну) запущенному на этом терминале. Так же необходимо чтобы сервис смог "сфотографировать" рабочий стол произвольного терминала а не только нулевого.
-
mercenary
- Сообщения: 387
- Зарегистрирован: Пн апр 07, 2008 11:45
- Откуда: Украина , Полтава
-
Контактная информация:
Сообщение
mercenary » Пн янв 12, 2009 14:55
если речь идет об дуаленном администрировании раб стола - могу посоветовать программу TeamViewer
-
Sedov
Сообщение
Sedov » Пн янв 12, 2009 15:55
Так получилось что использовать сторонние программы мы не можем. Надо написать свое+ некоторые дополнительные фитчи которые требуют подключения к сессиям.
-
AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
-
Контактная информация:
Сообщение
AsterMaster » Пн янв 12, 2009 16:00
Чтобы программа имела доступ к оконной системе рабочего места, нужно, чтобы функциональная часть программы (непосредственно работающая с оконной системой) испонялась в контексте данного рабочего места. Самый простой (также удобный и эффективный) способ сделать это - оформить функциональную часть в виде библиотеки DLL, которую затем связать с системным механизмом Winlogon Notification Events. Тогда эта библиотека будет вызываться на каждом рабочем месте (и в каждом пользовательском сеансе на рабочем месте) по событиям запуска сеанса, входа и выхода пользователей.
Получив управление в нужный момент и данные по событию (например, user token по событию входа в систему), можно оставить библиотеку резидентной в вызывающем процессе (winlogon) и тогда все действия по управлению рабочим местом проводить через нее, или запустить вспомогательный процесс с привилегиями службы.
* Данное решение одинаково хорошо подходит и для рабочих мест АСТЕР и для сеансов стандартного сервера терминалов.
-
Sedov
Сообщение
Sedov » Пн янв 12, 2009 22:30
Спасибо! Попробую.
-
Polad
Сообщение
Polad » Вт июл 28, 2009 8:38
Добрый день.
Мы в организации используем программу VNCViewer для удалённого администрирования.
Покупать дополнительное ПО нет особого желания.
Есть ли возможность подключаться к конкретной сессии пользователя другим способом (не TeamViewer'ом)?
-
AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
-
Контактная информация:
Сообщение
AsterMaster » Вт июл 28, 2009 11:44
TightVNC 1.3.10 может работать с дополнительными сеансами (только без запуска службы и без использования mirror-драйвера). Для правильной работы программы под АСТЕР необходимо обновить один файл (см.
здесь).
-
Polad
Сообщение
Polad » Ср июл 29, 2009 7:38
Поставил вашу версию.
Только вот где нажать чтобы выбрать нужную сессию?
-
AsterMaster
- ИБИК
- Сообщения: 2222
- Зарегистрирован: Сб фев 05, 2005 0:48
- Откуда: Москва
-
Контактная информация:
Сообщение
AsterMaster » Ср июл 29, 2009 10:50
Нужная сессия выбирается путем указания IP-адреса нужной сессии (если IP-адреса разделены с помощью АСТЕР) или порта нужной сессии (если серверы TightVNC настроены на разные порты на разных рабочих местах).
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость