Скрытый функционал сервера удалённых приложений в Windows 7
Функционал сервера удаленных рабочих столов (сервера терминалов) для клиентских операционных систем Windows появился еще с XP. Дело в том, что при тестировании Windows XP SP2 beta не было ограничений на использование удалённых рабочих столов. Именно с беты умные люди и выдернули необходимую библиотеку, благодаря чему XP SP2 приобрел функционал сервера терминалов. Ограничение на 10 одновременных подключений в XP также обошли путём патча библиотеки tcpip.sys. В итоге, получился достаточно «лёгкий» продукт, который многие используют до сих пор из-за своей простоты и малой ресурсоёмкости.
Ситуацию с удалёнными рабочими столами в Widows Vista рассматривать не будем. Ибо уже не актуально. На данный момент самой современной клиентской ОС является Widows 7. На ней и остановимся. Как повысить её функционал до многопользовательского сервера терминалов, думаю не стоит особо расказывать. Всё делается аналогично старой доброй XP, а именно заменой на пропатченный termsrv.dll. Об этом можно почитать в гугле. Информацию, откуда он появился для Windows 7 мне никто не предоставил. Но добившись функций сервера терминалов в семёрке, я продолжил исследования. Тем более, что аналогичное решение уже есть для windows xp — то использование «тяжелой» 7-ки для не совсем осмысленно.
Раз уж современные серверные ОС Windows Server 2008 и 2008 R2 позволяют предоставлять помимо обычных терминальных сессий еще и приложения сквозь бесшовный терминал (TS RemoteApp), то данный функционал явно присутствует в современной Windows 7. Приложение в терминале — вещь еще более интересная, чем удалённый десктоп. Зачем пользователю видеть удалённый рабочий стол, кнопки «Пуск» итд, тратить на это дополнительный трафик? А чтобы ограничить пользователя и урезать ему функционал — настраивать множественные групповые политики? Раз уж удалённому пользователю необходимо только приложение, то пусть оно откроется как обычное (как при запуске с его компьютера) и покажет только окно самой программы. Пользователю будед комфортно, а администратору спокойней. Полагаю, что непрофессионал (читай — девачка, которая ходит «фкантакти» и никогда не догадается, что жесткий диск — это винчестер) даже не отличит — разницу в том, терминальная ли это сессия или приложение запущено локально. Выдать может только медленная загрузка приложения (например, при низкой скорости соединения или загруженности сервера), но опять же данные вещи можно списать на «тормоза» компа или глюки виндус 🙂
В общем задача:
сделать из Windows 7 терминальный сервер удалённых приложений (Terminal Server RemoteApp) для доставки оных в любую точку земного шара пользователям стандартной Windows XP SP3.
Решение. Патчим termsrv.dll (подчеркну dll-ки разные на x86 и x64), создаем максимальное количество одновременных подключений. Проверяем работоспособность удалённого рабочего стола. Если всё ОК — переходим к активации функционала TS RemoteApp. Делается это — правкой одного(!) ключа реестра.
Открывает regedit, ищем «TSAppAllowList», в нём правим значение ключа с нуля на еденицу.
Теперь добавляем необходимое приложение, которое будед запускаться в бесшовном терминале. Создаём раздел внутри TSAppAllowList. Название произвольное. Внутри раздела прописываем имя приложения и путь к нему. Каждый раздел будед посвящен отдельному приложению. Возьмём для примера — стандартный виндовый калькулятор. В разделе создаём строковые параметры Name и Path. Полагаю, что их смысл понятен из приложенной ниже картинки. В некоторых англоязычных источниках предлагается в разделе TSAppAllowList создавать раздел Application, а уже в нём создавать разделы удалённых программ. Но в моём варианте всё и так заработало.
Всё! Windows 7 TS RemoteApp edition готов к боевым испытаниям! Осталось донастроить для данных целей Windows XP SP3 (не знаю у кого как, но у меня со всеми последними обновлениями, скачивающимися через встроенный автообновлятор). Так что если что-то незаработает — обновляйтесь. Возможно есть путь проще при помощи возможных визардов, но я делал следующим образом. Кстати, для Windows XP SP3 существует обновление для поддержки RemoteApp. Скачать его можно здесь (не забываем выбрать language вашей ОС), но у меня работало всё и без него.
Открываем в XP SP3 в Пуск => Программы => Стандартные = «Подключение к удалённому рабочему столу». Прописываем IP сервера (вашего псевдо TS RemoteApp на базе Windows 7), куда будем подключаться. Затем жмём внизу окна «Сохранить как».
Выбираем путь куда будем сохранять файл подключения *.RDP. Сохраняем. Идём туда, куда сохраняли — открываем блокнотом наш RDP-файл. Находим следующие значения (если таковые уже имеются — заменяем):
[code]remoteapplicationmode:i:1
remoteapplicationprogram:s:calc
disableremoteappcapscheck:i:1
alternate shell:s:rdpinit.exe[/code]
Замечу, что основной параметр приложения это «remoteapplicationprogram:s:» после него БЕЗ ПРОБЕЛОВ прописывается имя приложения или путь/имя приложения. Тут мои эксперименты продолжились. Для калькулятора можно прописать calc, calc.exe или C:windowssystem32calc.exe (путь в удалённой ОС). Я подставил вместо calc — Notepad (Блокнот) и на удивление всё заработало. Даже без прописывания в реестре Windows 7 приложений!!! Помните что такое «Переменные среды», чтобы не пытаться запустить без пути то, чего в «переменных средах» нет. То есть если вам нужно какое-то конкретное приложение, а не стандартное виндовое, то пишите полный путь к нему. Если приложение будет прописано в реестре Windows 7, а в параметрах RDP — только имя, то соответственно, если приложения не будет в «переменных средах», то будет выдана ошибка, что приложение не найдено и терминальная сессия закроется.
Еще одним правилом будет то, что у вас (вернее у того пользователя под которым вы зайдете в терминал) также должны быть права на запуск приложения и права на доступ к той директории, в которой находится данное приложение.
Итак… Запускаем наш «ярлык».
Удалённый сервер попросит Имя пользователя и Пароль. Вводим и подключаемся. Приложение в бесшовном терминале — доставлено.
Источник http://www.ultra54.ru
Как настроить Terminal Services RemoteApp (удаленные приложения) в Windows 7 Корпоративная? После моей заметки “Как сделать из Windows 7 терминальный сервер?” – это сделать проще простого. Нужно добавить пару ключей в реестр и создать файл для подключения.
1. Правим реестр. Запускаем regedit.exe. И идем в ветку:
HKLM\Software\Microsoft\WindowsNT\CurrentVersion\TerminalServer\TSAppAllowList
В разделе TSAppAllowList создаем новый подраздел Applications. Далее создаем подразделы для программ, которые должны будут запускаться в качестве RemoteApp. Для каждой программы свой подраздел. Для проверки создадим подраздел с названием Notepad. Переходим в него и создаем два строковых параметра Name и Path. Для параметра Name задаем значение notepad.exe, а для Path – путь к папке где лежит приложение, в нашем случае – C:\Windows. (Путь должен быть к папке на компьютере, который будет выступать в роли терминального сервера с Windows 7).
Добавляем приложения следующим образов. В разделе Applications создаем дополнительные разделы для каждой программы. И в этих разделах создаем два строковых параметра Name и Path.
На последок изменим еще один параметр. Переходим в раздел TSAppAllowList. И выставим значение 1 для параметра fDisableAllowList.
С реестром закончили.
2. Создадим файл для подключения к удаленному рабочему столу
Запускаем утилиту Подключением к удаленному рабочему столу через меню Пуск –> Стандартные, либо Win+R, вводим mstsc, Enter.
В открывшемся окне вводим имя ПК, либо IP адрес компьютера с Windows 7 TS RemoteApp. Жмем Сохранить как… И сохраняем в любом месте.
Откроем полученный файл в Notepad++
В файле меняем значение параметра remoteapplicationmode:i:0 на remoteapplicationmode:i:1. После добавим 3 строчки:
remoteapplicationprogram:s:notepad disableremoteappcapscheck:i:1 alternate shell:s:rdpinit.exe
Сохраняем файл RemoteApp.rdp и запускаем.
При подключении спросит логин и пароль. Нужно чтобы учетная запись входила в группу Пользователи удаленного рабочего стола. Либо надо быть локальным админом, либо доменным. Если все условия соблюдены, то через пару секунд откроется Notepad.
Пробовал разные программы и даже некоторые игры – работает. Вот только как это применить на практике, я пока не придумал.
01.11.2011 — Метод работает только в Windows 7 SP1 Корпоративная (может еще в Windows 7 Максимальная — не проверял). В Windows 7 SP1 x32 Профессиональная не работает.
З.Ы. Если при подключении выскакивает сообщение: “Следующее удаленное приложение RemoteApp отсутствует в списке разрешенных программ”, то нужно проверить параметр реестра fDisableAllowList, что у него значение 1.
Перед выполнением пунктов этой статьи надо убедится, что заменен файл termsrv.dll, как описано в статье “Как сделать из Windows 7 терминальный сервер?”. Проверить подключение по RDP к этому компьютеру.
I found out, that Windows 7 Professional doesn’t support providing RemoteApps to clients per default, only Windows 7 Enterprise, Ultimate or higher provides this functionality.
But fortunately, I found this thread on github.
You need to follow all the instructions in the thread:
The following files can be found in various subdirectories of the %SystemRoot%\WinSXS directory and copied to the appropriate place:
%SystemRoot%\system32\rdpinit.exe %SystemRoot%\system32\rdpshell.exe %SystemRoot%\system32\TSErrRedir.dll %SystemRoot%\system32\tspubwmi.dll %SystemRoot%\system32\wbem\tsallow.mof %SystemRoot%\system32\spp\tokens\ppdlic\terminalservices-remoteapplications-clientsku-ppdlic.xrm-ms
Then register the components:
RegSvr32 %SystemRoot\system32\tspubwmi.dll mofcomp %SystemRoot%\system32\wbem\tsallow.mof
Now patch %SystemRoot%\system32\rdpinit.exe (0x8000404 to 0x00000001)
rdpinit.exe (1.7601.17514) 32bit:
0000568E: 04 01 0000568F: 40 00 00005690: 00 00 00005691: 80 00
rdpinit.exe (1.7601.17514) 64bit:
0000611D: 04 01 0000611E: 40 00 0000611F: 00 00 00006120: 80 00
Finally add registry keys:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\TerminalTypes\eddcc3ce-6e7e-4f4b-8439-3d9ad4c9440f] "Name"="Remote Applications Terminal" "SessionSource"=dword:00000001 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\ConnectionHandler\eddcc3ce-6e7e-4f4b-8439-3d9ad4c9440f] "CLSID"="2be8bdbb-be09-499d-9a4b-4637e09ae00b" "Description"="Default Connection Handler" "Name"="Default Connection Handler" "fAcceptConnection"=dword:00000001
Now restart Terminal services and use RemoteAppTool to create Remote Applications and .rdp files for the clients.
Windows 7 Service Pack 1 Windows 7 Enterprise Windows 7 Home Basic Windows 7 Home Premium Windows 7 Professional Windows 7 Starter Windows 7 Ultimate Еще…Меньше
Введение
В данной статье рассматривается обновление для возможности подключения к удаленным рабочим столам и приложениям RemoteApp в Windows 7. Это обновление обеспечивает поддержку для определенных функций Windows Server 2012 R2 в Windows 7.
Дополнительные сведения
Сведения об обновлении
Это обновление устанавливается при установке 2830477 обновления из центра обновления Windows. Это обновление можно загрузить на странице загрузки обновления 2830477. Для получения дополнительных сведений щелкните следующий номер статьи базы знаний Майкрософт:
2830477 обновление для возможности подключения к удаленным рабочим столам и приложениям RemoteApp в Windows
Примечание. Рекомендуется отменить подписку на все рабочие области, перед удалением обновления. Это предотвращает следующие проблемы.
Известные проблемы
Important
Тщательно выполните действия, описанные в этом разделе. При неправильном изменении реестра могут возникнуть серьезные проблемы. До изменения его резервную копию для восстановления реестра в случае возникновения проблем.
Проблема 1
Рассмотрим следующий сценарий:
-
Это обновление на компьютере и затем Подпишитесь на рабочую область.
-
Удалить обновление с компьютера.
-
Попробуйте отказаться от рабочей области.
В этом случае операция завершается с ошибкой, и рабочую область остается зарегистрированных.
Эта проблема возникает потому, что Windows 7 не удается удалить разделы реестра, созданные с помощью данного обновления.
Чтобы обойти эту проблему, выполните следующие действия.
-
Нажмите кнопку Пуск, в поле Начать поиск введите regedit.exe и нажмите клавишу ВВОД, чтобы запустить редактор реестра.
-
Перейдите по следующему адресу:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Workspaces\Feeds
-
Найти перевод необходимо удалить раздел реестра, в котором значение URL-адреса соответствует URL-адрес рабочей области.
-
Удалите разделы реестра, которые необходимо найти.
Например можно удалить раздел реестра, с помощью следующей команды:reg delete HKCU\SOFTWARE\Microsoft\Workspaces\Feeds\{A6851E3B-B228-4EEA-A01E-8D3968CDA34F}
Проблема 2
Рассмотрим следующий сценарий:
-
Это обновление на компьютере и затем Подпишитесь на рабочую область.
-
Удалить обновление с компьютера.
В этом случае иногда появляется одно из следующих сообщений об ошибке программы RunDLL:
Ошибка в записи tsworkspaceMissing: WorkspaceStateNotify2
Ошибка в записи tsworkspaceMissing: TaskUpdateWorkspaces2
Эта проблема возникает, поскольку обновления создает новые задания для поддержания вашей подписки в актуальном состоянии. Задание новой функции, которая больше не существует, после удаления обновления.
Чтобы обойти эту проблему, выполните следующие действия.
-
Нажмите кнопку Пуск, выберите Все программы, Стандартныеи щелкните Планировщик заданий.
-
Откройте Планировщик заданий (локальный)Библиотека планировщика заданий и перейдите в следующее расположение:
Microsoft\Windows\RemoteApp и Update\ подключения к рабочему столу -
Откройте папку, которая представляет имя пользователя.
-
Удалите следующие задачи:
-
Обновление подключений
-
Отчет о состоянии обновления
Примечание. Чтобы удалить задание, щелкните правой кнопкой мыши задачу и выберите команду Удалить.
-
Предварительные условия
Это исправление необходимо использовать Пакет обновления 1 (SP1) для Windows 7. Дополнительные сведения о получении пакета обновления Windows 7 или Windows Server 2008 R2 щелкните следующий номер статьи базы знаний Майкрософт:
976932 сведения о Пакет обновления 1 для Windows 7 и Windows Server 2008 R2
Дополнительные сведения
Для получения дополнительных сведений о терминологии обновлений программного обеспечения щелкните следующий номер статьи базы знаний Майкрософт:
Описание 824684 Стандартные термины, используемые при описании обновлений программных продуктов Майкрософт
Нужна дополнительная помощь?
Нужны дополнительные параметры?
Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.
В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.
Windows 7 Professional RemoteApp предоставляет удобный способ настройки удаленных приложений для использования на компьютерах, работающих под управлением Windows 7 Professional. RemoteApp позволяет пользователям запускать приложения с сервера, не устанавливая их локально на своих компьютерах. Это удобно для дистанционных сотрудников, которым требуются доступ к корпоративным приложениям с любого места и с любого устройства.
Настройка Windows 7 Professional RemoteApp включает в себя несколько шагов. Сначала необходимо настроить сервер Remote Desktop, чтобы он поддерживал RemoteApp. Затем нужно создать пакет RemoteApp, который будет содержать все необходимые файлы и настройки приложения. После этого следует настроить клиентский компьютер, чтобы он мог запускать удаленные приложения.
После завершения настройки пользователи смогут запускать удаленные приложения с сервера, используя интерфейс, похожий на локальный. Они смогут работать с приложениями также, как если бы они были установлены на их локальных компьютерах. Команды и данные между удаленным приложением и клиентским компьютером передаются по зашифрованному соединению, обеспечивая безопасность и конфиденциальность информации.
Содержание
- Windows 7 Professional RemoteApp: преимущества и области применения
- Установка и настройка Windows 7 Professional RemoteApp
- Создание приложений для использования Windows 7 Professional RemoteApp
Windows 7 Professional RemoteApp: преимущества и области применения
Преимущества использования Windows 7 Professional RemoteApp:
- Упрощение обслуживания: вместо централизованного обслуживания всего рабочего стола, вы можете предоставить доступ только к необходимым приложениям, что значительно упрощает обслуживание и обновление приложений.
- Увеличение безопасности: приложения запускаются на сервере и клиентская машина не имеет доступа к исходному коду или файлам приложений, что обеспечивает высокий уровень безопасности.
- Экономия ресурсов: использование RemoteApp не требует установки и запуска полного виртуального рабочего стола, что позволяет сэкономить ресурсы сервера и клиентского компьютера.
- Удобство использования: пользователи могут запускать приложения, необходимые им, не покидая свой рабочий стол, что экономит время и повышает производительность.
Windows 7 Professional RemoteApp находит применение во многих областях, например:
- Дистанционный доступ к приложениям для сотрудников с использованием личных устройств, таких как ноутбуки, планшеты или смартфоны.
- Удаленный рабочий стол для сотрудников, находящихся вне офиса или на удаленных местах работы.
- Предоставление доступа к специализированным или дорогостоящим программам, которые не требуют постоянной установки на каждом клиентском устройстве.
- Виртуализация приложений на сервере, что облегчает централизованное управление и обновление.
Windows 7 Professional RemoteApp – мощный инструмент, позволяющий повысить безопасность и эффективность работы с приложениями, а также расширить область применения удаленного доступа к рабочим столам и приложениям.
Установка и настройка Windows 7 Professional RemoteApp
- Войдите в систему с учетной записью администратора.
- Установите все обновления для Windows 7 Professional с помощью Windows Update.
- Откройте «Панель управления» и выберите «Система и безопасность».
- В «Системе и безопасности» выберите «Система» и перейдите во вкладку «Удаленные настройки».
- В разделе «Удаленные настройки» установите флажок «Разрешить подключение к этому компьютеру».
- Нажмите кнопку «Выбор пользователей» и добавьте учетные записи пользователей, которым необходим доступ к RemoteApp.
- Нажмите «ОК» для сохранения настроек.
- Установите и настройте Role Services Remote Desktop Session Host на сервере.
- Создайте программу RemoteApp, которую вы хотите использовать на удаленном компьютере.
- На удаленном компьютере откройте «Компьютер», щелкните правой кнопкой мыши «Свойства» и выберите «Дополнительные параметры системы».
- Перейдите во вкладку «Дополнительно» и нажмите «Настройки» в разделе «Быстродействие».
- Выберите вкладку «Дополнительно» и нажмите «Добавить».
- В появившемся окне введите путь к программе RemoteApp и нажмите «ОК».
- Нажмите «Применить» и «ОК», чтобы сохранить изменения.
После завершения этих шагов Windows 7 Professional RemoteApp будет готов к использованию. Вы сможете запускать программы удаленно с помощью этого удобного инструмента и работать с ними так, как если бы они были установлены на вашем локальном компьютере.
Создание приложений для использования Windows 7 Professional RemoteApp
Windows 7 Professional RemoteApp позволяет создавать виртуальные приложения, которые можно запускать на удаленных компьютерах без необходимости установки их локально. Это удобно для предоставления доступа к определенным приложениям с любого устройства, подключенного к интернету.
Для создания приложения для использования в Windows 7 Professional RemoteApp необходимо следовать нескольким шагам:
1. Настройка сервера RemoteApp:
Для начала необходимо настроить сервер RemoteApp, который будет предоставлять доступ к созданным приложениям. Это можно сделать через «Установку и удаление программ» в разделе «Системные настройки» контрольной панели.
2. Создание виртуального приложения:
После настройки сервера RemoteApp можно приступить к созданию виртуального приложения. Для этого следует выполнить следующие действия:
— Выбрать приложение, которое вы хотите сделать виртуальным.
— Установить RemoteApp для этого приложения с помощью инструментов, предоставленных сервером RemoteApp.
— Настроить параметры доступа к виртуальному приложению, такие как пользователи, имеющие разрешение на его запуск, и настройки безопасности.
3. Тестирование приложения:
После создания виртуального приложения следует его протестировать, запустив его на удаленном компьютере, подключенном к серверу RemoteApp. Убедитесь, что приложение запускается корректно и функционирует без каких-либо проблем.
Создание приложений для использования в Windows 7 Professional RemoteApp является полезным инструментом для предоставления доступа к нужным приложениям без установки их локально. Следуйте указанным выше шагам, чтобы успешно настроить и использовать RemoteApp на Windows 7 Professional.