Альтернативный клиент для удаленного рабочего стола (RDP Client)



Решение проблемы работы пользователей с приложениями в терминальном режиме

Обновление от 27.02.2014

  • Добавлена информация в заголовок активной сессии в виде %Server% — %User%
  • Сделана вменяемая кнопка с настройками
  • Починено сворачивание окна и разворачивание его

 

Долгое время мои пользователи работали с 1С в полноэкранной сессии и очень часто жаловались. В результате был реализован клиент для rdp протокола который растягивает экранную сесиию на рабочий стол, а панель задач остается видимой.

Внимание! Это первая публичная версия (т.е по сути бэта), комментарии, критика и предложения приветствуются

Системные требования:

  1. Windows XP SP3 и выше
  2. Microsoft Remote Desktop 6.1 и выше (скачать для XP можно тут)

Как с ним работать

При запуске программа заполняет настройки по умолчанию, а именно:

  1. При подключении перенаправлять принтеры
  2. При подключении подключать диски клиентов
  3. При подключении перенаправлять буфер обмена
  4. Авто переподсоединение при разрыве
  5. Звук отключен

Все настройки хранятся в .ini файле. Для того чтобы он создался в первый раз, необходимо просто запустить программу и ее закрыть. В папке с программой будет создан .ini файл следующего содержания:

[main]
UserName=DOMAINUserName
Password=MySuperPuperSecretPassw0rd
Server=terminalserver.local
ServerPort=3389
[adv]
ConnectPrinters=1
ConnectLocalDiskDrives=1
ConnectAudio=0
ConnectCOMPorts=0
ConnectSmartCards=0
ConnectClipboard=1
ConnectDevices=1
ConnectPOSDevices=0
EnableAutoReconnect=1
[app]
ExecutablePath=
WorkingDirectory=
Arguments=

 

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

Порядок работы

  1. Создаем файл с настройками
  2. Перетаскиваем его на .exe-шник
  3. Нажимаем кнопку connect
  4. Работаем

Минимизация окна в панель производится путем однократного клика левой кнопкой мыши по окну в панели задач (или правой кнопкой и выбрать пункт свернуть)

Внимание! Любые изменения внесенные в форме программы автоматом сохраняются в файле настроек

ToDo

  1. Шифрование паролей
  2. Автосоединение при перетаскивании файла на exe-шник
  3. Смена расширения файла и настройка ассоциаций

 

35 Comments

  1. iov
    Reply
  2. agentz

    Собственно никто не запрещает использовать AutoIT. Мне так удобней, тем более что в будущем планируется сделать seamless rdp режим

    Reply
  3. iov

    (2) Смысл не в запрете а в передаче в неизвестный код всех данных для подключения… Я даже запустить такое не изучив исходники не соглашусь.

    Просто вопрос в том что Ваш ник с такой софтиной вызывает дикий приступ паранойи.

    Без обид просто очень напомнил якутский вирус «вышлите ваши пароли и сотрите папку windows».

    А в целом молодец что вообще сам написал.

    Reply
  4. agentz

    Абсолютно без обид. Писалось для себя поэтому и название такое.

    А чтобы страхов небыло, то я специально привел скрин с отчетом вирустотала.

    Reply
  5. iov

    (4) дык и на мой код тоже не ругается (есть аналог только с «контрольками») и я всегда знаю кто пользовался утилитой для входа (краткий обзор системы с которой запущена утилита + проверка на кое какие параметры).

    заодно она сама обновляется без «спроса». Ибо пользователь — дитя безответственное и безмозглое. А тут скачал нажал — вошёл. Если что утилитка подскажет что нет инета или поднимет туннель VPN.

    И все это буквально за символическое вознаграждение от админов.

    Reply
  6. script

    В общем все класно. Полезно это не только пользователям но и админам и прогрраммерам. НО:

    1) обязательно нужно выбор данных авторизации прямо в поле как в обычном РДП

    Тыкать ини файлы в езе-шник — это не по феншую.

    2) в ини файл добавить опцию — показывать полоску для сфорачивания окна или нет.

    Reply
  7. agentz

    (6) script, по п.1 в ближ планах сделать быстрый выбор файла через меню например

    по п.2 — запишу на будущее.

    в ближ планах сделать бесшовные окна, как в Citrix

    Reply
  8. adanil

    Программа, конечно, интересная, но чем вам не нравится RemoteApp в 2008 сервере? Там все эти «плюшки» реализованы и работают.

    Reply
  9. Abzkrs

    в виндовс сервер 2008 такая плюшка называется «Удаленные приложения RemoteApp»…

    Reply
  10. agentz

    (8) adanil, (9) Abzkrs, в 2003 такого нет. + насколько я помню, RemoteApp требует верисю 7 RDP, а в основном используются 5-6

    Reply
  11. whtblck

    Разрешите и мне, раз уж критика приветствуется.

    Присоединяюсь к (6).

    1. Хранить пароль в ini-файле, в незашифрованном виде, как минимум, нелепо.

    2. Как выполнить программу при подключении? Пользователю не должен быть доступен рабочий стол сервера.

    Вот ini-шник, при подключении выдает неопознанную ошибку

    [main]
    UserName=<тут мой домен><тут мой логин>
    Password=<тут мой пароль>
    Server=bserv
    ServerPort=3389
    
    [adv]
    ConnectPrinters=1
    ConnectLocalDiskDrives=1
    ConnectAudio=0
    ConnectCOMPorts=0
    ConnectSmartCards=0
    ConnectClipboard=1
    ConnectDevices=1
    ConnectPOSDevices=0
    EnableAutoReconnect=1
    
    [app]
    ExecutablePath=C:Program Files (x86)1Cv771c.bat
    WorkingDirectory=
    Arguments=

    Показать

    ошибка же такая:

    —————————

    alex_rdp_client

    —————————

    Неопознанная ошибка.

    —————————

    ОК

    —————————

    что не так сделал?

    Reply
  12. fly

    В принципе чего огород городить? Открываем *.rdp в блокноте и правим секцию desktopheight:i:ххх в сторону уменьшения высоты экрана….

    Reply
  13. agentz

    (11) whtblck, попробуй указать рабочий каталог WorkingDirectory. Правда я эту опцию не тестировал, у меня в свойствах терминального пользователя прописана программа

    (12) fly, вариант, но надо руками менять на каждом клиенте

    Reply
  14. haous

    Пользуюсь RemoteApp в 2008 сервере и не парю мозг!

    Reply
  15. vital1c

    (13) один раз отредактировали файл, и скопировали на все клиенты, уже с незапамятных времен пользуюсь таким спосбом, и меня удивляет что кто-то огороды из этого городит

    Reply
  16. item

    В любом случае достойный труд.

    Reply
  17. OscarTT

    в каких то случаях может и пригодиться, скорее всего при массовой «терминализации»

    Reply
  18. stepan_shock

    Очень здорово! то что нужно было! А можно добавить

    1. маппинг только определенных дисков. как это делается во встроенном клиенте от MS

    2. Какие нибуть горячие клавиши для переключения окон типа альт+таб

    Reply
  19. Aksonx2

    (1) iov, Хотел написать вам в личку но нету денех какихто :))). Если вы не против использую ваш текст для своих развлечений с RDP.

    На 109 строке включил мозг :)))))

    Reply
  20. ildus78

    (8) adanil, RemoteApp в 2008 R2 до сих пор имеет множество ошибок и нерешенных проблем, лучше и стабильнее Citrixa пока ничего нет.

    Reply
  21. nilabs

    1. было бы неплохо, если бы можно было запускать вашу программу из командной строки с параметром, в котором можно было бы передавать ini файл, присмотритесь к linux rdesktop,

    2. Хотелось бы в ini файле задавать параметры геометрии, т.е. необязательно высота экрана rdp = высота экрана — панель задач и т.д.

    Reply
  22. beard1
    в будущем планируется сделать seamless rdp режим

    вот это будет действительно интересно посмотреть…

    Reply
  23. nilabs

    Еще одно замечание, когда пользователь работает с несколькими терминальными сессиями в панели задач я вижу не имя сессии, а «Alex’s Microsoft Remote Desktop Client», попробуйте так поориентироваться с 3-4 терминальными сессиями

    Reply
  24. stepan_shock

    Есть обновленная версия?

    Reply
  25. agentz

    (24) stepan_shock, к сожалению исходники померли вместе с виртуалкой.

    может попозже сваяю новую версию

    Reply
  26. sacred

    Собственно, единственное, чего не хватает во всех клиентах — возможности запускать удалённый рабочий стол с пониженным разрешением на полный экран.

    Т.е. например, у меня монитор 1920*1080 а я запускаю удалёнку в режиме 1024*600 и клиент показывает мне это всё в полноэкранном режиме. Т.е. все элементы пропорционально увеличиваются.

    Вот эта фича востребованная для плоховидящих бухгалтеров работающих в терминале.Понижать разрешение локального монитора — не предлагать! 🙂

    Reply
  27. 1Cynep4eJIoBek

    для Linux очень хороший 2XClient

    Reply
  28. smaharbA

    автору — а Вы описание полей штатного файла рдп прочитать не пробовали ?

    Reply
  29. stepan_shock

    Восстановите и продолжайте программу! Она классная и нужна людям

    Reply
  30. agentz

    (30) stepan_shock, посмотрим, может на след выходных напишу заново

    Reply
  31. the1

    Много лет использую mRemote. Пока искал ссылку, чтобы указать в комментарии, обнаружил, что он уже почил в бозе, а заодно нашел преемника. Кстати, за труды спасибо, тоже поюзаем!

    Reply
  32. stepan_shock

    Суперская приблуда!!!!!!!!!!! Огромное спасибо.

    Прошлой версией пользовался на ура, а теперь еще и новая!!!!

    Reply
  33. stupid01

    (26) sacred, Не удалось найти решение проблемы?

    Reply
  34. banktex

    Не работает если сменить порт со стандартного на любой другой. У нас порт 3389 заменен в целях безопасности. Эта прога увы не работает.

    Reply
  35. agentz

    (36) banktex, работает. № порта берет из соотвествующего поля. Может быть бага, попробуй файл сохранить, а затем открыть заново

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *