подключение к рабочим столам

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

Модератор: 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) и тогда все действия по управлению рабочим местом проводить через нее, или запустить вспомогательный процесс с привилегиями службы.

* Данное решение одинаково хорошо подходит и для рабочих мест АСТЕР и для сеансов стандартного сервера терминалов.


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 настроены на разные порты на разных рабочих местах).

Закрыто

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя