Разрешение ярлыка на рабочем столе пользователя сеанса удаленного опубликованного приложения Citrix вызываться сочетанием клавиш
На данный момент я в шапке моего разработчика, но это скорее вопрос системного администратора, где я пытаюсь работать с нашим клиентом, чтобы решить проблему. (Некоторые имена и номера изменились - идея / вопрос остались прежними)
Клиент имеет 10 серверов Citrix. Есть, наверное, 50 сотрудников. Каждый сотрудник может иметь от 3 до 8 копий приложения, которое мы назовем "B". Это опубликованное приложение. Экземпляры приложения B могут работать на одном сервере / сеансе или могут быть распределены по нескольким серверам (и, таким образом, по нескольким сеансам).
У меня есть приложение, которое мы назовем "D". Он связан с приложением B. В частности, вы можете вызвать что-то в D, которое очистит экран B для текущей записи и выведет соответствующие данные в D. Таким образом, пользователь находится в B и хочет вызвать дополнительную информацию о текущей записи B на экране Д.
D - это приложение для одного экземпляра - оно знает обо всех различных базах данных B и объединяет их. Таким образом, пользователь должен запускать только один D одновременно.
У большинства наших клиентов нет нескольких серверов или нескольких экземпляров B. Поэтому наше приложение D просто регистрирует глобальную горячую клавишу, чтобы позволить пользователю вызывать функцию в единственной копии D, чтобы очистить одну копию экрана B.
На этом клиенте этот подход не будет работать - мы не хотим, чтобы рабочий стол пользователя, который представляет собой конгломерат многих опубликованных B-окон, а также, возможно, веб-браузер, почтовый клиент и т. Д., Также был бы загроможден D-окном для каждого отдельного Сервер Citrix.
У меня была идея написать небольшое приложение-заглушку для D, которое при запуске очищало активный экран B, взаимодействовало с пользователем и затем выходило. Эта заглушка D, которую я назову X, может быть на каждом сервере Citrix и не потребляет ресурсов. Однако мне все еще нужен способ запустить его.
Я попытался создать ярлык на рабочем столе в профиле пользователя на серверах Citrix, но, похоже, это не сработало. Моя идея заключалась в том, чтобы поставить ярлык X на рабочем столе и установить для него ярлык (очень сложный термин для Google/Bing!), Например, Ctrl + Alt + D. К сожалению, это не похоже на работу. Может случиться так, что такое поведение зависит от explorer.exe и, поскольку есть опубликованное приложение, нет explorer.exe.
Даже если это сработало, мне нужно убедиться, что оно активировано только в "текущем" сеансе Citrix, то есть с фокусированным экземпляром пользователя B. Я не хочу, чтобы все серверы Citrix были подключены к пользователю. вызвать наше маленькое приложение-заглушку при нажатии сочетания клавиш.
Учитывая эту ситуацию (спасибо, что прочитали это далеко!) У меня есть два вопроса
Кто-нибудь знает, если я смогу сделать горячие клавиши внутри ярлыков в опубликованном приложении работы сеанса Citrix? Если так, что я мог сделать? Кроме того, если бы это помогло использовать RDP вместо Citrix, меня бы тоже заинтересовало мнение там.
Если вы знаете, как заставить работать #1, то как мне будет отвечать только сервер с фокусированным окном?
Если #1 нельзя заставить работать, я мог бы заставить наш клиент изменить способ запуска B для запуска через командный файл. Затем я запускаю маленькое приложение-заглушку в фоновом режиме одновременно с запуском B. X может зарегистрировать мьютекс, чтобы избежать многократного запуска в течение одного сеанса. Но в этой ситуации мне все еще хотелось бы узнать, как Citrix (или MS RDP) может обрабатывать глобально зарегистрированные сочетания клавиш. Если пользователь нажимает Ctrl + Alt + D, это приводит к переходу к различным копиям X или только к X, который принадлежит в сеансе приложения B с fous?
Я пытался вырезать ненужные кусочки вышеупомянутого фона. Пожалуйста, укажите, если я был неоднозначен, и вы хотели бы получить разъяснения. Спасибо за любые и все предложенные мнения.