Назад | Перейти на главную страницу

Терминальный сервер не запускает программу в сеансе

Я запускаю 32-разрядную версию Windows 2008 Enterprise в режиме служб терминалов. У меня есть программа, которая работает локально, но не запускается при подключении по RDP. Когда я пытаюсь запустить его, я вижу, что программа запущена в диспетчере задач, но она никогда не отображается пользователю. Нет сообщений, ошибок, ничего, кроме процесса, указанного в диспетчере задач. Нет никаких признаков того, что что-то происходит.

Я установил программу с помощью параметра «Установить программу на сервере терминалов» на панели управления, а также попытался переустановить ее в режиме «изменить пользователя / установить».

Какие-либо предложения?

РЕДАКТИРОВАТЬ: он отлично работает в Terminal Server 2003.

К сожалению, будет ли приложение работать в терминальном сеансе или нет, зависит от того, как оно было написано. Более чем вероятно, что проблема совместимости связана с кодом, использующим глобальное пространство имен, что больше не разрешено по соображениям безопасности. Я бы попытался изменить свойства исполняемого файла, чтобы он работал в режиме совместимости с Windows XP, и посмотреть, работает ли это. В блоге Technet есть отличная запись, объясняющая, почему это происходит с устаревшими приложениями: http://blogs.technet.com/askperf/archive/2007/04/27/application-compatibility-session-0-isolation.aspx

Я не уверен, с какой версии Windows вы подключаетесь. Если это Vista или 7, вам нужно будет использовать mstsc / admin вместо описанной команды Knox. Если это приложение работает во время сеанса администратора, вероятно, что программное обеспечение требует какого-либо повышения прав доступа.

Это может быть полезно в качестве этапа отладки для подключения к сеансу консоли (сеанс 0) и посмотреть, работает ли там приложение. Возможно, приложение случайно жестко запрограммировано для работы только в сеансе 0. На клиенте попробуйте

mstsc -v: имя сервера / F -консоль

как описано в

Как подключиться к сеансу консоли и скрыть его с помощью служб терминалов Windows Server 2003