DE112013006337T5 - Remoteclientanwendung - Google Patents

Remoteclientanwendung Download PDF

Info

Publication number
DE112013006337T5
DE112013006337T5 DE112013006337.9T DE112013006337T DE112013006337T5 DE 112013006337 T5 DE112013006337 T5 DE 112013006337T5 DE 112013006337 T DE112013006337 T DE 112013006337T DE 112013006337 T5 DE112013006337 T5 DE 112013006337T5
Authority
DE
Germany
Prior art keywords
application
client
remote
remote client
settings
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112013006337.9T
Other languages
English (en)
Inventor
Fletcher Liverance
Matthew Kwiecinski
William Bredbenner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE112013006337T5 publication Critical patent/DE112013006337T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications

Abstract

Ein Beispielverfahren umfasst den Empfang einer Eingabe von einem Remote-Client (110) für den Start einer Anwendung; Senden der mit der Anwendung verbundenen Einstellungen (124, 230) an den Remote-Client (110); und Veranlassen, dass die Anwendung auf dem Remote-Client (110) gemäß den Einstellungen (124, 230) gestartet wird).

Description

  • HINTERGRUND
  • In derzeitigen Netzwerken wie zum Beispiel Unternehmensnetzwerken, die sowohl über das World Wide Web (WWW) als auch über lokale Netzwerke (LAN) kommunizieren können, ist es üblich, eine zentrale Datenbank und/oder einen oder mehrere zentrale Server zu haben. Verschiedene standortferne Benutzergeräte oder Remote-Clients können auf den zentralen Server zugreifen, um den Endbenutzern Zugriff auf die Daten und Dienste zu ermöglichen, die auf diesem oder über diesen Server zur Verfügung stehen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Für ein umfassenderes Verständnis der Beispiele in der vorliegenden Offenbarung werden nachstehend die folgenden Beschreibungen für die begleitenden Zeichnungen angegeben, wobei:
  • 1 eine schematische Darstellung eines Systems nach einem Beispiel ist;
  • 2 ein Blockdiagramm einer Vorrichtung nach einem Beispiel ist;
  • 3 ein Ablaufdiagramm eines Beispielprozesses nach einem Beispiel ist; und
  • 4 ein Screenshot nach einem Beispiel ist.
  • DETAILLIERTE BESCHREIBUNG
  • In verschiedenen hier offengelegten Beispielen wird eine Anfrage von einem Remote-Client für den Start einer Anwendung auf einem Hostserver zu einer Shell-Anwendung auf dem Hostserver weitergeleitet. Die Shell-Anwendung veranlasst, dass die angeforderte Anwendung auf dem Remote-Client gestartet wird. Darüber hinaus kann die Shell-Anwendung mit der angeforderten Anwendung auf dem Hostserver verbundene Konfigurationsdaten nutzen, damit diese beim Start und Betrieb der Anwendung auf dem Remote-Client verwendet werden.
  • Mit Bezug auf 1 ist ein Beispielsystem 100 nach einem Beispiel schematisch dargestellt. Das System 100 kann verschiedenen Komponenten umfassen, zum Beispiel Server und Terminals, die in der Lage sein können, eine Remoteverbindung herzustellen, wie zum Beispiel Remote Desktop Protokoll (remote desktop protocol, RDP). Das Beispielsystem 100 kann in einem Netzwerk wie zum Beispiel einem Unternehmensnetzwerk (z. B. ein virtuelles privates Netzwerk (virtual private network, VPN)) für ein Unternehmen mit Niederlassungen an mehreren geografischen Standorten umgesetzt werden. In dem dargestellten Beispielsystem 100 kann ein Client 110 mit einem Hostserver 120 über ein Netzwerk 102 kommunizieren.
  • In verschiedenen Beispielen kann das System 100 ein oder mehrere Remote-Terminals wie zum Beispiel den Client 110 umfassen, von denen aus Endbenutzer über den Hostserver 120 auf Daten und Ressourcen zugreifen können. In anderen Beispielen kann eine beliebige Anzahl von Clients über das gleiche oder über verschiedene Netzwerke oder durch eine direkte Verbindung zum Hostserver 120 mit dem Hostserver 120 kommunizieren.
  • In einem Beispiel kann der Client 110 ein Terminal sein, durch das ein Benutzer eine Remote-Desktop-Verbindung zum Hostserver 120 aufbauen kann. Darüber hinaus kann der Client 110 über den Hostserver 120 eine Verbindung mit anderen Einheiten aufbauen, zum Beispiel anderen Servern, anderen Clients, Datenbanken oder ähnlichem. In dem in 1 dargestellten Beispiel kann der Client 110 über ein Netzwerk 102 mit dem Hostserver 120 kommunizieren. In einigen Beispielen kann der Client 110 sich an dem gleichen geografischen Standort befinden wie der Hostserver 120 und kann über ein lokales Netzwerk (local area network, LAN), wie zum Beispiel ein lokales Breitband-Netzwerk (Wideband Local Area Network, WLAN), mit dem Hostserver 120 kommunizieren. In anderen Beispielen befindet sich der Client 110 an einem von dem Hostserver 120 entfernten Ort und kann über ein Weitverkehrsnetz (wide area network, WAN) mit dem Hostserver 120 kommunizieren, bei dem es sich um ein öffentliches Netzwerk wie das Internet handeln kann. Wie hier verwendet, können sich die Begriffe „Client” oder „Remote-Client” auf jedes Terminal beziehen, das von dem Hostserver 120 getrennt ist und über eine Verbindung mit dem Hostserver 120 kommuniziert, wobei die Verbindung entweder eine direkte Verbindung oder eine Verbindung über ein Netzwerk ist.
  • Der in 1 dargestellte Remote-Client 110 umfasst eine Remote-Desktop-Anwendung 112, die zum Beispiel auf einem Prozessor des Remote-Clients 110 ausgeführt wird. In verschiedenen Beispielen ermöglicht es die Remote-Desktop-Anwendung 112 dem Remote-Client 110, mit dem Hostserver 120 zu kommunizieren und auf verschiedene Anwendungen und/oder Daten auf dem oder über den Hostserver 120 zuzugreifen. Zusätzlich kann der Remote-Client 110 mit verschiedenen Anwendungen versehen werden, wie zum Beispiel der in 1 dargestellten lokalen Anwendung 114, zur Ausführung des Remote-Clients 110 durch einen Prozessor. Bei der lokalen Anwendung 114 kann es sich um einen Browser (z. B. Netscape, Internet Explorer, Mozilla usw.), ein Textverarbeitungsprogramm (z. B. Microsoft Word), eine Tabellenkalkulationsanwendung (z. B. Excel) oder eine andere ähnliche Anwendung handeln.
  • Der Hostserver 120 kann mit verschiedenen anderen Komponenten verbunden werden, beispielsweise einer Datenbank zur Speicherung von Daten und/oder Anwendungen, die von verschiedenen Endbenutzern aufgerufen werden können. Die Datenbank kann serverseitige Ressourcen enthalten, beispielsweise verschiedene Anwendungssoftware-Programme, die zum Beispiel auf einem entfernten Terminal-Computer im Netzwerk geöffnet werden können. Zusätzlich kann Anwendungssoftware für das Remote-Desktop-Protokoll (RDP), die vom Hostserver 120 für die Verbindung zu Endbenutzergeräten genutzt werden kann (z. B. Remote-Clients wie Client 110), in der Datenbank gespeichert und auf dem Hostserver 120 betrieben werden.
  • In dem Beispiel in 1 umfasst der Hostserver 120 eine eigene Instanz einer Remote-Desktop-Anwendung 122. Die Remote-Desktop-Anwendung 122 auf dem Hostserver 120 kann es Remote-Clients wie dem Client 110 ermöglichen, auf verschiedene Daten und/oder Anwendungen auf dem oder über den Hostserver 120 zuzugreifen. Zum Beispiel kann der Remote-Client 110 auf verschiedene Anwendungen zugreifen, die auf dem Hostserver 120 gehostet werden, sowie auf Daten, die auf der mit dem Hostserver 120 verbundenen Datenbank zur Verfügung stehen.
  • In verschiedenen Beispielen kann der Hostserver 120 auch mit einer Reihe von Anwendungen zur Ausführung durch einen Prozessor des Hostservers 120 versehen sein. Wie oben mit Bezug auf den Client 110 angemerkt, können die auf dem Hostserver 120 bereitgestellten Anwendungen zum Beispiel einen Browser (z. B. Netscape, Internet Explorer, Mozilla usw.), ein Textverarbeitungsprogramm (z. B. Microsoft Word), eine Tabellenkalkulationsanwendung (z. B. Excel) oder eine andere ähnliche Anwendung umfassen. Wie in dem Beispiel in 1 dargestellt, kann der Hostserver 120 auch mit gespeicherten Konfigurationsdaten 124 bezüglich der verschiedenen Anwendungen versehen sein oder Zugriff darauf haben. Die Konfigurationsdaten 124 können sich auf die Konfiguration der Anwendung beziehen, wenn die Anwendung auf dem Server gestartet wird. Zum Beispiel können die Konfigurationsdaten 124 Standardeinstellungen für Papiergröße, Schriftart, Benutzeridentifikation und Ähnliches für eine Textverarbeitungsanwendung umfassen. In einem anderen Beispiel können die Konfigurationsdaten 124 Lesezeichen (oder Favoriten) sowie eine oder mehrere Homepages für die Browseranwendung umfassen.
  • In 2 ist ein Blockdiagramm einer Vorrichtung 200 nach einem Beispiel dargestellt. Die Beispielvorrichtung 200 kann ein Computersystem sein, das als Hostserver 120 nach 1 genutzt werden kann. Eine ähnliche Vorrichtung kann verwendet werden, um einen Beispiel-Client 110 nach 1 zu illustrieren.
  • Die Vorrichtung 200 umfasst einen oder mehrere Ausgänge 204 wie zum Beispiel eine Anzeige für eine grafische Benutzerschnittstelle (graphical user interface, GUI), ein oder mehrere Eingabegeräte 214 wie zum Beispiel eine Tastatur und/oder eine Maus, eine oder mehrere Zentraleinheiten (central processing units, CPUs) 206, eine oder mehrere Kommunikationsschnittstellen 210 wie zum Beispiel eine drahtlose Schnittstelle oder eine Ethernet- oder andere kabelgebundene Schnittstelle, und ein oder mehrere Speichergeräte 208 wie zum Beispiel ein computerlesbares Medium.
  • Das Speichergerät 208 kann ein oder mehrere Speichermedien, wie zum Beispiel einen Schreib-Lesespeicher (random access memory, RAM), einen Lesespeicher (read only memory, ROM), einen löschbaren und programmierbaren ROM-Speicher (erasable programmable ROM, EPROM), einen elektrischen EPROM, einen Flash-Speicher oder andere nicht-flüchtige oder flüchtige Speichermedien umfassen. Das Speichergerät 208 kann Code speichern, einschließlich Anweisungen für die Ausführung durch einen Prozessor (z. B. CPU 206). Zum Beispiel kann das Speichergerät 208 ein Betriebssystem (BS) für die Vorrichtung 200 und ein oder mehrere Anwendungssoftware-Programme speichern, beispielsweise ein Remote-Desktop-Protokoll für den Server oder Client. Die verschiedenen Komponenten können zum Beispiel über einen Systembus 202 miteinander verbunden werden.
  • Die verschiedenen Komponenten der Beispielvorrichtung 200 nach 2 sind nicht auf die dargestellten beschränkt und können eine beliebige Anzahl an zusätzlichen Elementen umfassen, die für die Funktionen dieser bestimmten Vorrichtung 200 spezifisch sind. Zum Beispiel kann die Vorrichtung 200 auch einen digitalen Signalprozessor (DSP), zusätzliche Speicherelemente und Schnittstellen, einen optischen Signalprozessor, einen oder mehrere Adapter für die Übermittlung von Informationen zwischen dem Bus und einem Eingabegerät, einem Ausgabegerät oder einer Schnittstelle umfassen. Die Anwendungsprogramme können außerdem verschiedene Softwareprogramme umfassen, die durch einen oder mehrere der Prozessoren lesbar sind.
  • In verschiedenen Beispielen kann die CPU 206 der Vorrichtung 200 (z. B. der Hostserver) eine Shell-Anwendung 220 ausführen. Wie unten mit Bezug auf 3 detaillierter beschrieben, kann die Shell-Anwendung 220 so konfiguriert werden, dass sie den Start einer Anwendung auf dem Remote-Client veranlasst (z. B. dem Client 110 nach 1). Wenn zum Beispiel über eine Remote-Desktop-Anwendung eine Anfrage von dem Remote-Client für den Start einer Anwendung auf dem Server eingeht, kann die Shell-Anwendung 220 diese Anfrage an den Remote-Client umleiten. So kann eine Kopie der angeforderten Anwendung auf dem Remote-Client gestartet werden, um die Anfrage zu erfüllen. Darüber hinaus kann die Shell-Anwendung 220 so konfiguriert werden, dass sie den Remote-Client dazu veranlasst, die Anwendungskonfigurationsdaten 230 (z. B. ähnlich der Konfigurationsdaten der Hostanwendung 124 nach 1) beim Start der Anwendung auf dem Remote-Client zu verwenden.
  • In 3 illustriert ein Ablaufdiagramm einen Beispielprozess 300 nach einem Beispiel. Der Beispielprozess 300 kann zum Beispiel von dem Hostserver 120 nach 1 ausgeführt werden. In dem Beispielprozess 300 nach 3 wird eine Verbindung zwischen einem Remote-Client und einem Hostserver aufgebaut (Block 302). Wie oben dargelegt, kann die Verbindung durch eine Reihe von Anordnungen hergestellt werden, einschließlich verschiedener Netzwerke wie zum Beispiel dem Internet. Die Herstellung dieser Verbindung kann zusammen mit der Ausführung eines Remote-Desktop-Programms erfolgen, wie zum Beispiel dem Remote-Desktop-Protokoll (RDP), beispielsweise mithilfe der in 1 dargestellten Remote-Desktop-Anwendungen 112, 122, oder davon gefolgt werden.
  • In verschiedenen Beispielen kann während der Remote-Desktop-Verbindung der Hostserver eine Anfrage von dem Remote-Client für den Start einer Anwendung empfangen (Block 304). Diese Anfrage kann in verschiedenen Formen empfangen werden. In einem Beispiel kann in dem Remote-Desktop-Fenster des Remote-Clients ein Link zu einer Website angewählt werden. Das Anwählen des Links kann zu einer Anfrage für das Starten einer Browseranwendung führen. In einem anderen Beispiel kann die Anfrage in Form eines Versuchs zum Öffnen eines Dokuments in einem Textverarbeitungsprogramm oder einer anderen Anwendung vorliegen.
  • Bei konventionellen Anordnungen kann die Anwendung auf dem Server gestartet werden, sodass es einem Benutzer des Remote-Clients möglich ist, die auf dem Hostserver laufende Anwendung über den Remote-Desktop zu nutzen. Diese Anordnung kann jedoch zu wesentlichen Ineffizienzen führen. Zum Beispiel können im Falle einer Browseranwendung Webseiten von einem Webhost an den Server gesendet, auf dem Server umgesetzt, durch die Remote-Desktop-Anwendung auf dem Server verschlüsselt, an den Remote-Client gesendet und dann von der Remote-Desktop-Anwendung auf dem Remote-Client entschlüsselt werden.
  • Verschiedene Beispiele der vorliegenden Offenbarung beseitigen solche Ineffizienzen. Im Beispielprozess 300 nach 3 zum Beispiel kann nach Eingang der Anforderung zum Start der Anwendung eine Shell-Anwendung auf dem Hostserver gestartet werden (Block 306). In einigen Beispielen kann die Shell-Anwendung gestartet werden, wenn die Verbindung anfänglich aufgebaut wird, beispielsweise in Block 302. In anderen Beispielen kann die Shell-Anwendung immer auf dem Server laufen (z. B. im Hintergrund).
  • In verschiedenen Beispielen ist die Shell-Anwendung so konfiguriert, dass sie die Anfrage des Remote-Clients für den Start einer Anwendung verarbeitet. Anstatt die Anwendung auf dem Server zu starten, kann die Shell-Anwendung jedoch veranlassen, dass die Anwendung nahtlos auf dem Remote-Client startet.
  • In dieser Hinsicht kann die Shell-Anwendung einen virtuellen Kanal zwischen dem Hostserver und dem Remote-Client öffnen (Block 308). In verschiedenen Beispielen kann der virtuelle Kanal mithilfe der gleichen Kommunikationspfade geöffnet werden, die auch für die Remote-Desktop-Verbindung genutzt werden. In einigen Beispielen wird der virtuelle Kanal durch eine VPN-Verbindung (virtuelles privates Netzwerk) zwischen dem Remote-Client und dem Hostserver geöffnet.
  • Die Shell-Anwendung kann veranlassen, dass die zu der angeforderten Anwendung gehörenden Konfigurationsdaten vom Hostserver an den Remote-Client gesendet werden (Block 310). In verschiedenen Beispielen werden die Konfigurationsdaten durch den virtuellen Kanal an den Remote-Client gesendet. Wie oben dargelegt, können die Konfigurationsdaten den Einstellungen entsprechen, die mit der Anwendung verbunden sind, wenn sie auf dem Hostserver läuft. In verschiedenen Beispielen können die Konfigurationsdaten zum Beispiel Standardeinstellungen für Papiergröße, Schriftart, Benutzeridentifikation, Lesezeichen (oder Favoriten), eine oder mehrere Homepages oder eine Reihe von anderen Einstellungen umfassen. In einigen Beispielen werden die Konfigurationsdaten zur Speicherung beispielsweise in einem temporären speicher an den Remote-Client übermittelt. In anderen Beispielen werden die Konfigurationsdaten auf dem Hostserver gepflegt, aber die Konfigurationsdaten werden von der Shell-Anwendung und/oder dem Remote-Client für den Betrieb der angeforderten Anwendung verwendet, wie nachstehend beschrieben.
  • In verschiedenen Beispielen wird die Anwendung dann auf dem Remote-Client gestartet (Block 312). Beim Start der Anwendung auf dem Remote-Client kann die Shell-Anwendung auf dem Hostserver bestimmte Aspekte der Anwendung durch beispielsweise den virtuellen Kanal verwalten oder steuern. Wie oben angemerkt, können die Konfigurationsdaten dazu verwendet werden, die Anwendung auf dem Remote-Client zu konfigurieren. Im Falle einer Browseranwendung zum Beispiel kann die Homepage, die beim Start der Browseranwendung angezeigt wird, durch die Konfigurationsdaten festgelegt werden.
  • Wie oben angemerkt, werden die Konfigurationsdaten in einigen Beispielen in einem temporären Speicher des Remote-Clients gespeichert und während des Starts und Betriebs der angeforderten Anwendung abgerufen. In anderen Beispielen werden die Konfigurationsdaten auf dem Hostserver gepflegt. In diesen Fällen kann die Shell-Anwendung die Konfigurationsdaten überwachen und sie bei Bedarf dem Remote-Client zur Verfügung stellen, um den reibungslosen Start und Betrieb der angeforderten Anwendung zu erleichtern.
  • In einigen Beispielen kann es wünschenswert sein, gegenüber dem Benutzer des Remote-Clients den Anschein aufrecht zu erhalten, dass die angeforderte Anwendung innerhalb der Remote-Desktop-Anwendung läuft. In dieser Hinsicht kann die Shell-Anwendung den Betrieb einer konventionellen Remote-Desktop-Anwendung imitieren. Zum Beispiel kann die angeforderte Browseranwendung in dem Remote-Desktop-Fenster angezeigt werden, obwohl die Anwendung selbst eventuell außerhalb der Remote-Desktop-Umgebung läuft. In verschiedenen Beispielen können die Anzeige von Fenstern in der Remote-Desktop-Anwendung und die lokale Anwendung auf dem Remote-Client durch die Shell-Anwendung koordiniert werden. In dieser Hinsicht kann die Shell-Anwendung das Anzeigeprotokoll der Remote-Desktop-Anwendung steuern und kann entsprechend nahtlos die lokale Anwendung über das Remote-Desktop-Fenster anzeigen oder umgekehrt. Aus Benutzerperspektive können daher das Fenster der Remote-Desktop-Anwendung und das lokale Anwendungsfenster als ein einziges Fenster erscheinen.
  • In dieser Hinsicht wird auf 4 verwiesen, die einen Screenshot eines Client-Geräts nach einem Beispiel zeigt. In dem Beispiel nach 4 kann eine Anzeige 400 einem Benutzer des Client-Geräts einen lokalen Desktop 402 bereitstellen. Der lokale Desktop 402 kann Symbole (nicht abgebildet) umfassen, die verschiedenen Anwendungen entsprechen. Der lokale Desktop 402 kann dem Benutzer außerdem ein oder mehrere Fenster bereitstellen, wobei jedes Fenster einer Anwendung entspricht, die auf dem Client-Gerät laufen kann.
  • In dem Beispiel in 1 umfasst der lokale Desktop 402 ein Fenster 404, das einer Remote-Desktop-Anwendung entspricht. In verschiedenen Beispielen erscheint das Remote-Desktop-Fenster 404 ähnlich wie der lokale Desktop 402 und kann verschiedene Symbole enthalten. Das Remote-Desktop-Fenster 404 kann außerdem Unterfenster umfassen, die Anwendungen entsprechen, die auf einem Hostserver laufen und auf die über die Remote-Desktop-Anwendung zugegriffen wird. In dem Beispiel in 4 ist ein Unterfenster 406, das einer Anwendung entspricht (z. B. Textverarbeitung), in einem Remote-Desktop-Fenster 404 abgebildet. In dieser Hinsicht entspricht das Unterfenster 406 einer Anwendung, die auf dem Hostserver läuft und auf die über die Remote-Desktop-Anwendung zugegriffen wird.
  • Nach verschiedenen Beispielen, wie oben dargelegt, können die Anzeige von Fenstern in der Remote-Desktop-Anwendung und die lokale Anwendung auf dem Remote-Client durch die Shell-Anwendung koordiniert werden. In dem Beispiel in 4 ist ein Fenster 408 dargestellt, das einer Anwendung entspricht, die auf dem Client-Gerät läuft. Die Anwendung, die dem Fenster 408 entspricht, kann nach Weiterleitung durch die oben beschriebene Shell-Anwendung auf dem Client-Gerät laufen. Daher kann die Shell-Anwendung das Anzeigeprotokoll des Remote-Desktop-Fensters 404 und des Fensters 408 steuern. Indem es dem Benutzer eine nahtlose Anzeige zur Verfügung stellt, kann die Shell-Anwendung das Fenster 408 als Teil der Remote-Desktop-Anwendung erscheinen lassen. In dieser Hinsicht, wie in 4 dargestellt, kann das Fenster 408, das einer auf dem Client-Gerät laufenden Anwendung entspricht, einen Teil des Remote-Desktop-Fensters 404 einnehmen, kann jedoch selbst durch ein Unterfenster 406 des Remote-Desktop-Fensters 404 verdeckt werden. Daher kann der Benutzer der Remote-Desktop-Anwendung die Anwendung, die dem Fenster 408 entspricht, als Teil der Remote-Desktop-Anwendung ansehen.
  • Somit kann eine innerhalb einer Remote-Desktop-Umgebung angeforderte Anwendung dem Benutzer eines Remote-Clients ohne die oben beschriebenen Ineffizienzen im Zusammenhang mit der Remote-Desktop-Umgebung bereitgestellt werden.
  • Verschiedene hier beschriebene Beispiele werden im allgemeinen Kontext von Verfahrensschritten oder Prozessen beschrieben, die in einem Beispiel durch ein Softwareprogramm-Produkt oder eine Komponente umgesetzt werden können, welche in einem maschinenlesbaren Medium verkörpert sind, einschließlich ausführbarer Anweisungen wie zum Beispiel Programmcode, die durch Einheiten in Netzwerkumgebungen ausgeführt werden. Im Allgemeinen können die Programm-Module Routinen, Programme, Objekte, Komponenten, Datenstrukturen usw. umfassen, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Datentypen implementieren. Ausführbare Anweisungen, die dazugehörigen Datenstrukturen und Programm-Module stellen Beispiele für Programmcode für die Ausführung der Schritte der hier offengelegten Verfahren dar. Die spezielle Abfolge dieser ausführbaren Anweisungen oder die dazugehörigen Datenstrukturen stellen Beispiele für die entsprechenden Handlungen zur Umsetzung der in diesen Schritten oder Prozessen beschriebenen Funktionen dar.
  • Die vorstehende Beschreibung verschiedener Beispiele wurde zu Zwecken der Erklärung und Beschreibung dargelegt. Die vorstehende Beschreibung erhebt keinen Anspruch auf Vollständigkeit und soll keine Beschränkung auf die genaue offengelegte Form darstellen, und Veränderungen und Variationen sind anhand der vorstehenden Lehren möglich oder können aus der praktischen Umsetzung verschiedener Beispiele abgeleitet werden. Die hier erörterten Beispiele wurden ausgewählt und beschrieben, um die Grundsätze und die Art verschiedener Beispiele und deren praktische Anwendung zu erklären und es einem Fachmann zu ermöglichen, die verschiedenen Beispiele zu nutzen und verschiedene Veränderungen anhand der vorgesehenen Nutzung vorzunehmen. Die Eigenschaften der hier beschriebenen Beispiele können in allen möglichen Kombinationen von Verfahren, Vorrichtungen, Modulen, Systemen und Computerprogramm-Produkten kombiniert werden.

Claims (15)

  1. Vorrichtung (120, 200), die Folgendes umfasst: einen Prozessor (206); und ein Speichermedium (208), dessen Einstellungen (124, 230) mit einer oder mehreren Anwendungen verknüpft sind; wobei der Prozessor (206): eine Eingabe von einem Remote-Client (110) für den Start einer Anwendung erhält; mit der Anwendung verbundene Einstellungen (124, 230) an den Remote-Client (110) sendet; und veranlasst, dass die Anwendung auf dem Remote-Client (110) gemäß den Einstellungen gestartet wird.
  2. Vorrichtung nach Anspruch 1, wobei der Remote-Client (110) ein Remote-Desktop-Client ist.
  3. Vorrichtung nach Anspruch 1, wobei der Prozessor (206) die Einstellungen (124, 230) über einen virtuellen Kanal an den Remote-Client (110) sendet.
  4. Vorrichtung nach Anspruch 1, wobei der Prozessor (206) die Anzeige der Anwendung auf dem Remote-Client (110) steuert.
  5. Vorrichtung nach Anspruch 4, wobei der Prozessor (206) die Anwendung, die auf dem Remote-Client (110) läuft, in einem Fenster (404) anzeigt, das einer Remote-Desktop-Anwendung (112, 122) entspricht.
  6. Vorrichtung nach Anspruch 1, wobei die Einstellungen (124, 230) Lesezeichen umfassen, die mit einer Browseranwendung verbunden sind.
  7. Verfahren, das Folgendes umfasst: Empfang einer Eingabe von einem Remote-Client (110) für den Start einer Anwendung; Senden der mit der Anwendung verbundenen Einstellungen (124, 230) an den Remote-Client (110); und Veranlassen, dass die Anwendung auf dem Remote-Client (110) gemäß den Einstellungen gestartet wird.
  8. Verfahren nach Anspruch 7, das weiter Folgendes umfasst: Starten einer Shell-Anwendung (220) für den Zugriff auf und das Senden der Einstellungen (124, 230) an den Remote-Client (110).
  9. Verfahren nach Anspruch 7, wobei der Remote-Client (110) ein Remote-Desktop-Client ist.
  10. Verfahren nach Anspruch 7, wobei das Senden der Einstellungen (124, 230) Folgendes umfasst: Öffnen eines virtuellen Kanals zum Remote-Client (110) zum Versenden der Einstellungen (124, 230).
  11. Verfahren nach Anspruch 7, das weiter Folgendes umfasst: Steuerung der Anzeige der Anwendung auf dem Remote-Client (110).
  12. Verfahren nach Anspruch 11, wobei die Steuerung der Anzeige der Anwendung Folgendes umfasst: Anzeige der auf dem Remote-Client (110) laufenden Anwendung in einem Fenster (404), das einer Remote-Desktop-Anwendung (112, 122) entspricht.
  13. Computerprogramm-Produkt, verkörpert in einem nicht-flüchtigen computerlesbaren Speichermedium, das Folgendes umfasst: Computercode zum Versenden der Eingaben von einem lokalen Client (110) zu einem Hostserver (120) für den Start einer Anwendung; Computercode zum Empfangen von Einstellungen (124, 230), die mit der Anwendung verbunden sind, vom Hostserver (120) auf dem lokalen Client (110); und Computercode zum Starten der Anwendung auf dem lokalen Client (110) gemäß den Einstellungen (124, 230).
  14. Computerprogramm-Produkt nach Anspruch 13, wobei der Hostserver (120) ein Host für einen Remote-Desktop-Client ist.
  15. Computerprogramm-Produkt nach Anspruch 13, wobei die Anwendung in einem Fenster (404) angezeigt wird, das einer Remote-Desktop-Anwendung (112, 122) entspricht.
DE112013006337.9T 2013-01-31 2013-01-31 Remoteclientanwendung Pending DE112013006337T5 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2013/024026 WO2014120179A1 (en) 2013-01-31 2013-01-31 Remote client application

Publications (1)

Publication Number Publication Date
DE112013006337T5 true DE112013006337T5 (de) 2015-09-10

Family

ID=51262744

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112013006337.9T Pending DE112013006337T5 (de) 2013-01-31 2013-01-31 Remoteclientanwendung

Country Status (5)

Country Link
US (1) US20150365500A1 (de)
CN (1) CN104956358B (de)
DE (1) DE112013006337T5 (de)
GB (1) GB2524920B (de)
WO (1) WO2014120179A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11012480B2 (en) * 2010-09-13 2021-05-18 Jeffrey W. Mankoff Modifying signal associations in complex computing networks
WO2016179436A1 (en) * 2015-05-05 2016-11-10 Colorado Code Craft Patent Holdco Llc Ultra-low latency remote application access
CN108255547B (zh) * 2017-09-28 2021-05-28 新华三云计算技术有限公司 一种应用程序控制方法及装置
CN108052377B (zh) * 2017-12-29 2022-02-08 腾讯科技(深圳)有限公司 基于云的输入处理方法、装置、服务器和存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10247176A (ja) * 1997-03-04 1998-09-14 Nippon Steel Corp ネットワークシステム
JP3642005B2 (ja) * 2000-05-26 2005-04-27 日本電気株式会社 アプリケーション実行システム、アプリケーション実行方法、および記録媒体
US7320107B2 (en) * 2001-02-10 2008-01-15 Samsung Electronics Co., Ltd. Bookmark frame and method of launching browsers using the bookmark in an internet terminal
JP2002244861A (ja) * 2001-02-20 2002-08-30 Oki Electric Ind Co Ltd 個人向けapサーバ装置
US7418472B2 (en) * 2003-09-30 2008-08-26 Microsoft Corporation Systems and methods for determining remote device media capabilities
US7590750B2 (en) * 2004-09-10 2009-09-15 Microsoft Corporation Systems and methods for multimedia remoting over terminal server connections
JP4777725B2 (ja) * 2005-08-31 2011-09-21 フェリカネットワークス株式会社 携帯端末装置,サーバ装置,アプリケーション提供方法およびコンピュータプログラム
US8972534B2 (en) * 2006-04-12 2015-03-03 International Business Machines Corporation Adjusting software settings
US9239666B2 (en) * 2007-09-12 2016-01-19 Citrix Systems, Inc. Methods and systems for maintaining desktop environments providing integrated access to remote and local resources
KR100936239B1 (ko) * 2007-12-18 2010-01-12 한국전자통신연구원 스트리밍 기반 이동형 소프트웨어 제공 시스템 및 방법
US8433812B2 (en) * 2008-04-01 2013-04-30 Microsoft Corporation Systems and methods for managing multimedia operations in remote sessions
US8793331B2 (en) * 2008-05-16 2014-07-29 Wyse Technology L.L.C. Multimedia redirection
CN101882073A (zh) * 2009-05-04 2010-11-10 谭家辉 面向服务的应用系统及其通信方法、创建器和创建方法
US9535560B1 (en) * 2010-12-10 2017-01-03 Wyse Technology L.L.C. Methods and systems for facilitating a remote desktop session for a web browser and a remote desktop server
US9201709B2 (en) * 2011-05-20 2015-12-01 Citrix Systems, Inc. Shell integration for an application executing remotely on a server

Also Published As

Publication number Publication date
CN104956358B (zh) 2018-11-09
WO2014120179A1 (en) 2014-08-07
CN104956358A (zh) 2015-09-30
GB201511484D0 (en) 2015-08-12
GB2524920A (en) 2015-10-07
US20150365500A1 (en) 2015-12-17
GB2524920B (en) 2020-11-04

Similar Documents

Publication Publication Date Title
DE102016103733B4 (de) Kanaleigentum in einem Veröffentlichungs-/Abonnier-System
DE602004002783T2 (de) Verfahren, system und programmprodukt zum asynchronen verarbeiten von anforderungen
DE202011110893U1 (de) Verwaltung mehrfacher Anmeldungen über einen Einzelbrowser
DE202017106594U1 (de) Bereitstellen von Zugriff auf eine in einem Datenspeichersystem gespeicherte Datei
DE202015009311U1 (de) Öffnen lokaler Anwendungen von Browsern
DE112013003289T5 (de) Gerät, System und Verfahren für client-geregelte Sitzungspersistenz zwischen ein oder mehreren Clients und Servern eines Rechenzentrums
DE112008003966T5 (de) Selektives Um-Abbilden einer Netzwerktopologie
DE202012013445U1 (de) System, um Offline Zugriff in einem gehosteten Dokument-Service zur Verfügung zu stellen
DE112012002631T5 (de) Stream-Verarbeitung unter Verwendung einer Client-Server-Architektur
DE112010003361T5 (de) Virtuelles privates Netz für soziale Netze
DE202015009251U1 (de) Netzwerkpaketkapselung und Routing
DE202013012495U1 (de) Metadatenbasierte virtual Maschine-Konfiguration
DE102016104264B4 (de) Übertragen von Mehrfachzielpaketen in Overlay-Netzwerken
DE112013004187T5 (de) Technologie für Netzwerk-Datenübertragung durch ein Computersystem unter Verwendung von mindestens zwei Datenübertragungsprotokollen
DE112017005453T5 (de) Konfiguration verteilter Datenverarbeitungssysteme
DE112016000587T5 (de) Interoperabilität von entdeckungs- und verbindungsprotokollen zwischen clientvorrichtungen und ersten bildschirmvorrichtungen
DE112010003638B4 (de) Öffentliche BOT-Verwaltung in privaten Netzwerken
DE112013006337T5 (de) Remoteclientanwendung
DE102012223167A1 (de) Gemeinsame Nutzung von Artefakten zwischen kollaborativen Systemen
DE102011114277B4 (de) Globaler Konferenzplan für verteilte Brücken
DE112020004651T5 (de) Multi-tenant-etl-ressourcenaufteilung
DE112021004945T5 (de) Techniken der kompositionellen verifikation für rollenerreichbarkeitsanalysen in identitätssystemen
DE102012107809A1 (de) Browsen zwischen mobilen und nicht-mobilen Webseiten
DE112014006607T5 (de) Kommunikationsvorrichtung, integriertes Wagen-Verwaltungssystem und Routingtabellen-Aktualisierungsverfahren
DE102008012979A1 (de) Verfahren und Programm zum Bereitstellen von Datenkohärenz in Netzwerken

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., SPR, US

Free format text: FORMER OWNER: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., HOUSTON, TEX., US

R082 Change of representative

Representative=s name: HL KEMPNER PATENTANWALT, RECHTSANWALT, SOLICIT, DE

Representative=s name: HL KEMPNER PATENTANWAELTE, SOLICITORS (ENGLAND, DE