ПЕРЕТАСКИВАНИЕ ОБЪЕКТОВ МЕЖДУ ЛОКАЛЬНЫМИ И УДАЛЕННЫМИ МОДУЛЯМИ

1. Способ использования перетаскивания и отпускания для переноса объекта из локальной прикладной программы (102) в удаленный модуль в серверной компьютерной системе (111) в компьютерной системе (101), причем компьютерная система включает в себя локальную прикладную программу (102), выполняющуюся в компьютерной системе (101), и клиентский компонент (106), причем клиентский компонент (106) принимает участие в сеансе (131) терминального сервера с серверным компонентом (116) на серверной компьютерной системе (111), причем способ содержит
этап, на котором клиентский компонент (106) обнаруживает, что курсор (133) окна рабочего стола был перемещен извне в пределы границ окна (112W) удаленной прикладной программы (112);
этап, на котором клиентский компонент (106) принимает уведомление об отпускании, указывающее ожидающую обработки операцию перетаскивания, уведомление об отпускании указывает, что перетаскиваемый объект (126) должен быть перенесен в удаленную прикладную программу (112);
этап, на котором клиентский компонент (106) отправляет запрос на перенос перетаскиваемого объекта (126) вместе с координатами местоположения курсора (133) окна рабочего стола в серверную компьютерную систему (111) через сеанс (131) терминального сервера в ответ на прием уведомления об отпускании;
этап, на котором клиентский компонент (106) принимает запрос перетаскиваемого объекта от серверной компьютерной системы (111) через сеанс (131) терминального сервера;
клиентский компонент (106) выступает в качестве уполномоченной цели перетаскивания от имени удаленной прикладной программы (112) в ответ на прием запроса перетаскиваемого объекта (126), что включает в себя
этап, на котором перенаправляют запрос перетаскиваемого объекта (126) локальной прикладной программе (102); и
этап, на котором принимают перетаскиваемый объект (126) от локальной прикладной программы (102), отправленный в ответ на запрос перетаскиваемого объекта (126); и
этап, на котором клиентский компонент (106) отправляет перетаскиваемый объект (126) серверной компьютерной системе (111) через сеанс (131) терминального сервера для доставки удаленной прикладной программе (112).
2. Способ по п.1, дополнительно содержащий
этап, на котором конфигурируют клиентский компонент как уполномоченную цель перетаскивания, с тем чтобы клиентский компонент мог принимать перетаскиваемые объекты от локальной прикладной программы.
3. Способ по п.1, дополнительно содержащий
этап, на котором принимают пользовательский ввод, выбирающий перетаскиваемый объект из окна локальной прикладной программы, окно локальной прикладной программы представляет пользовательский интерфейс для локальной прикладной программы; и
этап, на котором модифицируют курсор окна рабочего стола для визуального представления, что перетаскиваемый объект был выбран.
4. Способ по п.1, в котором этап обнаружения, что курсор окна рабочего стола был перемещен извне в пределы границ окна удаленной прикладной программы, содержит этап, на котором обнаруживают, что курсор окна рабочего стола переместился из границ окна локальной прикладной программы в пределы границ окна удаленной прикладной программы.
5. Способ по п.1, в котором этап, на котором клиентский компонент принимает уведомление об отпускании, указывающее ожидающую обработки операцию перетаскивания, содержит этап, на котором обнаруживают изменение состояния кнопок на устройстве ввода.
6. Способ по п.1, в котором этап, на котором клиентский компонент отправляет запрос на перенос перетаскиваемого объекта вместе с координатами местоположения курсора окна рабочего стола серверной компьютерной системе через сеанс терминального сервера, содержит этап, на котором отправляют сообщение по виртуальному каналу сеанса терминального сервера.
7. Способ по п.1, в котором этап, на котором клиентский компонент отправляет запрос на перенос перетаскиваемого объекта вместе с координатами местоположения курсора окна рабочего стола серверной компьютерной системе через сеанс терминального сервера, содержит этап, на котором отправляют сообщение через сеанс протокола удаленного рабочего стола (RDP).
8. Способ использования перетаскивания и отпускания для переноса объекта в одну из одной или более удаленных прикладных программ (112) из модуля в клиентской компьютерной системе (101) в компьютерной системе (111), причем компьютерная система (111) включает в себя одну или более удаленных прикладных программ (112), выполняющихся в компьютерной системе (111), и серверный компонент (116), причем серверный компонент (116) принимает участие в сеансе (131) терминального сервера с клиентским компонентом (106) в клиентской компьютерной системе (101), причем одна или более удаленных прикладных программ (112), выполняющихся в компьютерной системе (111), выполнены доступными через сеанс (131) терминального сервера для клиентской компьютерной системы (101), причем способ содержит
этап, на котором серверный компонент (116) принимает запрос на перенос перетаскиваемого объекта (126) в компьютерную систему (111) и координаты местоположения, указывающие местоположение курсора (133) окна рабочего стола в клиентской компьютерной системе (110), причем запрос и координаты местоположения отправляются через сеанс (131) терминального сервера;
этап, на котором серверный компонент (116) перенаправляет уведомление о переносе перетаскиваемого объекта удаленной прикладной программе, соответствующей координатам местоположения;
серверный компонент (116) выступает в качестве уполномоченного источника перетаскивания от имени прикладной программы (102) в клиентской компьютерной системе (101) в ответ на получение запроса на перенос перетаскиваемого объекта (126), что включает в себя этап, на котором серверный компонент (116) принимает запрос перетаскиваемого объекта (126) от удаленной прикладной программы (112);
этап, на котором серверный компонент (116) перенаправляет запрос перетаскиваемого объекта (126) клиентскому компоненту (106) через сеанс терминального сервера (131);
этап, на котором серверный компонент (116) принимает перетаскиваемый объект (126) от клиентского компонента (106) через сеанс терминального сервера (131); и
серверный компонент (116) выступает в качестве уполномоченного источника перетаскивания от имени прикладной программы (102) в клиентской компьютерной системе (101) в ответ на прием перетаскиваемого объекта (126), что включает в себя этап, на котором серверный компонент (116) отправляет перетаскиваемый объект (126) удаленной прикладной программе (112).
9. Способ по п.8, в котором этап, на котором серверный компонент принимает запрос на перенос перетаскиваемого объекта компьютерной системе и координаты местоположения, указывающие местоположение курсора окна рабочего стола в клиентской компьютерной системе, содержит этап, на котором принимают сообщение по виртуальному каналу сеанса терминального сервера.
10. Способ по п.8, дополнительно содержащий
этап, на котором создают уполномоченный объект для имитации форматов, объявляемых перетаскиваемым объектом.
11. Способ по п.8, дополнительно содержащий
этап, на котором конфигурируют серверный компонент как уполномоченный источник перетаскивания, с тем чтобы серверный компонент мог предоставлять перетаскиваемые объекты удаленной прикладной программе.
12. Способ по п.8, дополнительно содержащий
этап, на котором серверный компонент инициализирует модальный цикл перетаскивания.
13. Способ использования перетаскивания и отпускания для переноса объекта из удаленного модуля в серверной компьютерной системе в локальную прикладную программу (302) в компьютерной системе (301), причем компьютерная система (301) включает в себя локальную прикладную программу (302), выполняющуюся в компьютерной системе (301), и клиентский компонент (306), клиентский компонент (306) принимает участие в сеансе (331) терминального сервера с серверным компонентом (316) в серверной компьютерной системе (311), причем способ содержит
этап, на котором клиентский компонент (306) обнаруживает, что курсор (333) окна рабочего стола был перемещен изнутри за пределы границ окна (312W) удаленной прикладной программы (312);
этап, на котором клиентский компонент (306) отправляет сообщение серверному компоненту (316) через сеанс (331) терминального сервера, причем сообщение указывает серверному компоненту (316), что курсор (333) окна рабочего стола был перемещен изнутри за пределы границ окна (312W) удаленной прикладной программы (312);
клиентский компонент (306) выступает в качестве уполномоченного источника перетаскивания от имени удаленной прикладной программы (312) в ответ на прием запроса перетаскиваемого объекта (326), что включает в себя этап, на котором клиентский компонент (306) принимает запрос перетаскиваемого объекта от локальной прикладной программы (302), запрос является показателем уведомления об отпускании в локальной прикладной программе (302) и представляет, что перетаскиваемый объект (326) должен быть передан в локальную прикладную программу (302);
этап, на котором клиентский компонент (302) отправляет запрос перетаскиваемого объекта (326) серверному компоненту (316), причем запрос отправляется через сеанс (331) терминального сервера в ответ на запрос, запрос указывает серверному компоненту (316), что локальная прикладная программа (302) запрашивает перетаскиваемый объект (326);
этап, на котором клиентский компонент (306) принимает перетаскиваемый объект (326) от серверной компьютерной системы (311) через сеанс (331) терминального сервера; и
клиентский компонент (306) выступает в качестве уполномоченного источника перетаскивания от имени удаленной прикладной программы (312) в ответ на прием перетаскиваемого объекта (326), что включает в себя этап, на котором клиентский компонент (306) отправляет перетаскиваемый объект (326) локальной прикладной программе (302).
14. Способ по п.13, в котором этап, на котором клиентский компонент обнаруживает, что курсор окна рабочего стола был перемещен изнутри за пределы границ окна удаленной прикладной программы, содержит этап, на котором обнаруживают, что курсор окна рабочего стола был перемещен из окна удаленной прикладной программы в окно локальной прикладной программы.
15. Способ по п.13, дополнительно содержащий
этап, на котором создают уполномоченный объект для имитации форматов, объявляемых перетаскиваемым объектом.
16. Способ по п.13, дополнительно содержащий
этап, на котором конфигурируют клиентский компонент как уполномоченный источник перетаскивания, с тем чтобы клиентский компонент мог предоставлять перетаскиваемые объекты клиентскому компоненту.
17. Способ по п.13, дополнительно содержащий
этап, на котором принимают пользовательский ввод, выбирающий перетаскиваемый объект из окна удаленной прикладной программы, окно прикладной программы представляет пользовательский интерфейс для удаленной прикладной программы; и
этап, на котором модифицируют курсор окна рабочего стола для визуального представления, что перетаскиваемый объект был выбран.
18. Способ использования перетаскивания и отпускания для переноса объекта из удаленной прикладной программы (312) в модуль в клиентской компьютерной системе (301) в компьютерной системе (311), причем компьютерная система (311) включает в себя одну или более удаленных прикладных программ (312), выполняющихся в компьютерной системе (311), и серверный компонент (316), серверный компонент (316) принимает участие в сеансе (331) терминального сервера с клиентским компонентом (306) в клиентской компьютерной системе (301), при этом одна или более удаленных прикладных программ (312), выполняющихся в компьютерной системе (311), выполнены доступными удаленно через сеанс (331) терминального сервера для клиентской компьютерной системы (301), причем способ содержит
этап, на котором серверный компонент (316) принимает сообщение от клиентского компонента (306) через сеанс (331) терминального сервера, причем сообщение указывает серверному компоненту (316), что курсор (333) окна рабочего стола был перемещен изнутри за пределы границ окна (312W), соответствующего удаленной прикладной программе (312), в клиентской компьютерной системе (311);
этап, на котором серверный компонент (316) определяет, что движение курсора (333) окна рабочего стола относится к ожидающей обработке операции перетаскивания;
этап, на котором серверный компонент (316) принимает запрос перетаскиваемого объекта (326) от клиентского компонента (306), запрос отправляется через сеанс (331) терминального сервера в ответ на запрос перетаскиваемого объекта (326) от прикладной программы (302) в клиентской компьютерной системе (301), причем запрос указывает серверному компоненту (316), что прикладная программа (302) в клиентском компоненте (306) запрашивает перетаскиваемый объект (326) из удаленной прикладной программы (312);
серверный компонент (316) выступает в качестве уполномоченной цели перетаскивания от имени прикладной программы (316) в клиентской компьютерной системе (311) в ответ на прием запроса перетаскиваемого объекта (326), что включает в себя
этап перенаправления запроса перетаскиваемого объекта (326) удаленной прикладной программе (312); и
этап приема перетаскиваемого объекта (126) от удаленной прикладной программы (312), отправленного в ответ на запрос перетаскиваемого объекта (326); и
этап, на котором серверный компонент (316) отправляет перетаскиваемый объект (326) клиентской компьютерной системе (310) через сеанс (331) терминального сервера для доставки в прикладную программу (302) в клиентской компьютерной системе (301).
19. Способ по п.18, дополнительно содержащий
этап, на котором конфигурируют серверный компонент как уполномоченную цель перетаскивания, с тем чтобы серверный компонент мог принимать перетаскиваемые объекты от удаленной прикладной программы.
20. Способ по п.18, в котором этап, на котором серверный компонент отправляет перетаскиваемый объект клиентской компьютерной системе через сеанс терминального сервера, содержит этап, на котором серверный компонент отправляет перетаскиваемый объект по виртуальному каналу сеанса протокола удаленного рабочего стола (RDP).