CN102436350B - Remote application window display method, server and user terminal - Google Patents
Remote application window display method, server and user terminal Download PDFInfo
- Publication number
- CN102436350B CN102436350B CN201110402091.8A CN201110402091A CN102436350B CN 102436350 B CN102436350 B CN 102436350B CN 201110402091 A CN201110402091 A CN 201110402091A CN 102436350 B CN102436350 B CN 102436350B
- Authority
- CN
- China
- Prior art keywords
- server
- user terminal
- application window
- window
- display
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000008569 process Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000011232 storage material Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
The invention provides a remote application window display method, a server and a user terminal. The method comprises that: the user terminal selects an application window, and sends an identifier acquisition request to the remote server in a virtual environment, so that the server returns a handle identifier corresponding to the application window; the user terminal receives the handle identifier, generates a windowed display request carrying the handle identifier, and sends the windowed display request to the server, so that the server sets windowed display information corresponding to the application window; and the user terminal receives the windowed display information returned by the server, and the application window is displayed on the screen of the user terminal according to the windowed display information. According to the technical scheme, remote display of the application window is realized in a remote access mode, the problem that high time overhead and traffic overhead caused by displaying the whole desktop cannot be accepted is solved, and the time overhead and the traffic overhead in remote display are reduced.
Description
Technical Field
The present invention relates to virtualization technologies, and in particular, to a remote application window display method, a server, and a user terminal.
Background
With the development of computer and internet technologies, various computing resources, data resources, software resources, and service resources are aggregated on a network. How to utilize the numerous types of resources scattered over the internet is becoming an increasingly important issue. The coming of the mobile internet era marked by the 3G network provides a new idea for the efficient utilization of resources of people and is also an opportunity of the IT service industry.
With the development of hardware devices, users have more and more obvious requirements for accessing diversified internet modes, so that a plurality of different types of user terminals appear, wherein the user terminals are particularly prominent in smart phones, netbooks and the like. But while highlighting the mobility of the user terminal, its processing power, storage capability and presentation capability are limited.
With the development of computing models, various solutions have been proposed for how to fully utilize computing resources and storage resources on a network under the condition of limited capability of a user terminal, such as: evolving from a client/server computing model to today's cloud computing and virtual computing. Increasingly, cloud computing based on virtualization is becoming mainstream, and a new network-based software application mode, i.e., a software-as-a-service mode, has evolved, allowing a user terminal, particularly a mobile user terminal, to use software via a network and to acquire powerful computing resources and virtual resources on the network.
With the advancement of technology, more and more functions are available to people on mobile user terminals, and the concept of network software services is introduced. Compared with the use of traditional desktop software, the networked use mode of the software greatly improves the processing capacity and the resource use capacity of the user terminal and the convenience of the user terminal. In the aspect of software use, the input of a mouse, a keyboard and the like of a user terminal is transmitted to a server for processing through communication of a remote interaction protocol and the server, then a processing result returned by the server is obtained and displayed on the user terminal, the user terminal does not need to maintain and purchase software, debugging and error correction operation are not needed when the software is in operation failure, the user does not need to care about details such as installation, deployment and the like of the software, and only needs to care about the execution result of the software and pay for each use. In terms of resource usage, the user terminal can theoretically expand resource access infinitely because the software runs in a network environment and is not limited to the storage material of the user terminal. The method is more beneficial to the use of users, and simultaneously ensures the data security.
As can be seen from the above description, the exposition of the remote access technology is a key link for implementing the network software service, but the existing exhibition mode has great limitations. Firstly, due to the outstanding mobility of the user terminal in the mobile internet, the user terminal is greatly limited in terms of the performance and size of the device, especially the difference between the size and resolution of the device and the computer screen is large, the encoding granularity of the existing remote interaction protocol is based on the whole desktop, and under most use scenes, the user usually only cares about the running condition of one program within a certain time, so that in the use process, the user has to disperse a great deal of effort on the operation of selecting the concerned application program through the desktop, which causes inconvenience in operation and cannot bear waste in time. Secondly, since the traffic overhead caused by the transmission of the whole desktop is often unacceptable, its low effective data rate creates a lot of unnecessary overhead, which limits the use of the remote desktop access method in the wide area network, so that many services cannot be popularized.
Disclosure of Invention
The invention provides a remote application window display method, a system, a server and a user terminal, which are used for realizing remote display of an application window in a remote access mode, solving the problem that the time overhead, the flow overhead and the like caused by displaying the whole desktop are large and cannot be accepted, and reducing the time overhead and the flow overhead during remote display.
One aspect of the present invention provides a method for displaying a remote application window, including:
the method comprises the steps that a user terminal selects an application window and sends an identification obtaining request to a remote server in a virtualization environment, so that the server returns a handle identification corresponding to the application window;
the user terminal receives the handle identifier returned by the server, generates a windowing display request carrying the handle identifier, and sends the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request;
and the user terminal receives the windowed display information corresponding to the application window returned by the server and displays the application window on a screen of the user terminal according to the windowed display information.
Another aspect of the present invention provides a user terminal, including:
the selection sending module is used for selecting an application window and sending an identification obtaining request to a remote server in a virtualization environment so as to enable the server to return a handle identification corresponding to the application window;
a generating and sending module, configured to receive the handle identifier returned by the server, generate a windowing display request carrying the handle identifier, and send the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request;
and the first receiving and displaying module is used for receiving the windowed display information corresponding to the application window returned by the server and displaying the application user window on the screen of the user terminal according to the windowed display information.
Yet another aspect of the present invention provides a server comprising:
the first receiving module is used for receiving an identification acquisition request sent by a user terminal when an application window is selected;
the first returning module is used for returning the handle identifier corresponding to the application window to the user terminal;
the second receiving module is used for receiving a windowing display request which is sent by the user terminal and carries the handle identifier;
the acquisition setting module is used for setting the windowed display information corresponding to the application window according to the windowed display request;
and the second returning module is used for returning the windowed display information corresponding to the application window to the user terminal so that the user terminal can display the application window on a screen of the user terminal according to the windowed display information.
In the remote application window display method provided by one aspect of the invention, the user terminal selects the application window, and sends an identifier acquisition request to the server, so that the remote server returns the handle identifier of the application window selected by the user terminal to the user terminal, then the user terminal sends a windowing display request carrying the handle identifier to a remote server so as to enable the remote server to set windowing display information required by displaying the application window, and provides it to the user terminal, which displays the application window on the screen according to the windowed display information provided by the server, compared with the prior art that the display is carried out by taking the whole desktop as the granularity, the user does not need to switch among the application windows, the time overhead of remote display is reduced, in addition, compared with the whole desktop, the information amount of the application window is much smaller, and the flow overhead in remote display is reduced.
In another aspect of the present invention, a user terminal selects an application window, sends an identifier obtaining request to a server, and enables a remote server to return a handle identifier of the application window selected by the user terminal to the user terminal, and then sends a windowed display request carrying the handle identifier to the remote server, so that the remote server sets windowed display information required for displaying the application window, and provides the windowed display information to the user terminal, and the user terminal displays the application window on a screen according to the windowed display information provided by the server.
In another aspect of the present invention, a server obtains a request according to an identifier of a user terminal, and returns a handle of a selected application window to the user terminal, and the server sets windowed display information required for displaying the application window according to a windowed display request carrying the handle identifier sent by the user terminal, and provides the windowed display information to the user terminal, so that the user terminal displays the application window on a screen according to the windowed display information provided by the server.
Drawings
Fig. 1 is a flowchart of a remote application window display method according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a method for displaying a remote application window according to another embodiment of the present invention;
FIG. 3 is a flowchart of a method for displaying a remote application window according to another embodiment of the present invention;
fig. 4 is a schematic structural diagram of a user terminal according to an embodiment of the present invention;
fig. 5 is a schematic structural diagram of a user terminal according to another embodiment of the present invention;
fig. 6 is a schematic structural diagram of a server according to an embodiment of the present invention.
Detailed Description
Fig. 1 is a flowchart of a remote application window display method according to an embodiment of the present invention. As shown in fig. 1, the method of the present embodiment includes:
step 101, a user terminal selects an application window and sends an identifier acquisition request to a remote server in a virtualization environment, so that the server returns a handle identifier corresponding to the application window.
The embodiment is suitable for a system adopting virtualization. The embodiment adopts a Client/Server (Client/Server; abbreviated as C/S) architecture, which mainly comprises three parts: client, (i.e., user terminal), remotely located server, and communication protocol used.
For example, the following steps are carried out: the user terminal in this embodiment may be a smart phone, for example, but not limited to, using an operating system of android2.1 or more. The server may use the Windows7 operating system, but is not limited thereto. The communication protocol used between the user terminal and the server may be a Remote Frame Buffer (RFB) protocol, and in this embodiment, the RFB protocol is also expanded to support a window-level display and a dynamic switching function between display windows, but is not limited thereto.
In addition, in this embodiment, the user terminal is installed with client software for implementing a virtual machine, and the server is installed with server software for implementing a virtual machine, and the user terminal is connected to the virtual space implemented by the server through the client software for implementing a virtual machine.
In this embodiment, the user terminal supports a windowing display function, and the windowing display function corresponds to a desktop display function, and only a certain application window is displayed instead of displaying the whole desktop. The application window may be a certain application program or a certain document.
When a user selects a certain application window on the server through the user terminal, the user terminal simultaneously sends an identification acquisition request to the server. For the server, which application window is selected by the user terminal can be identified, so that after receiving the identifier acquisition request sent by the user terminal, the server can acquire the handle identifier of the application window selected by the user terminal according to the identifier acquisition request of the user terminal. The handle identifier is used to identify the application window, and may be, for example, an Identity (ID) of the application window.
Wherein, the user terminal can send the identification acquisition request to the server by using the RFB protocol.
And 102, the user terminal receives the handle identifier returned by the server, generates a windowing display request carrying the handle identifier, and sends the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request.
And after the server acquires the handle identifiers of all the application windows, sending the acquired handle identifiers to the user terminal. For example: the server may send the handle identification to the user terminal using the RFB protocol.
And after receiving the handle identifier returned by the server, the user terminal sends a windowing display request to the server to request for displaying the application window. The user terminal may open a plurality of application windows, and in order to identify which application window is, the user terminal adds a handle identifier for identifying the application window to the windowing display request and transmits the handle identifier to the server.
After receiving the windowing display request, the server acquires a handle identifier from the windowing display request, and identifies an application window requested to be displayed by the user terminal according to the acquired handle identifier; and then, setting the windowing display information corresponding to the application window. The server sets the windowed display information corresponding to the application window, mainly means that the application window is arranged in front, a capture area is set, vertex coordinates are obtained, and the messages are combined to realize the capture and the coding of the application window. The application window front-end mainly refers to the application window top-end in the current desktop environment. The current desktop environment can be divided into a single desktop environment and a plurality of desktop environments, wherein the plurality of desktop environments are combined by independent single desktop environments, and a user can switch between the independent desktop environments, but the independence between the single desktop environments is required to be maintained; in many desktop environments, the application window can only be set on top in the current desktop environment. Setting the intercepting area mainly refers to a process that a server program requests a rectangular area parameter of a current application window from an operating system of the server through a handle identifier with uniqueness of the current application window. And after the window size is changed, the server sets the current screen capture area as the area of the application window and informs the user terminal of changing the window size. The fixed point coordinate acquisition mainly refers to a process that after the server acquires the area of the current application window, the server acquires the left vertex coordinate of the application window so as to perform position synchronization on the mouse time. When the client sends a mouse button event, the click position is based on the client screen, namely the current application window, and the coordinate is mapped to the desktop of the server, and the left vertex coordinate needs to be added for displacement. For example, if the current window left vertex is (50, 50), the client sends a (20, 20), then the real coordinates on the server desktop should be (70, 70).
And 103, the user terminal receives windowed display information corresponding to the application window returned by the server, and displays the application window on a screen of the user terminal according to the windowed display information.
After the server sets the windowed display information, the windowed display information including the vertex coordinates and other information is sent to the user terminal.
And after receiving the windowed display information, the user terminal acquires vertex coordinate information therein and acquires the success of operation according to the acquired vertex coordinate information. And the user terminal performs display adjustment, coordinate synchronization and the like according to the vertex coordinate information, and lays a foundation for displaying the selected application window on a screen of the user terminal. In addition, the user terminal can also store the vertex coordinate information for calculating the real coordinates of the desktop of the server.
Further, when the screen is updated, the server automatically checks whether the area of the application window is changed, and if the area of the application window is changed, the server informs the user terminal of changing the area of the display area. Namely, the server also sends the intercepting area information to the user terminal through the windowed display information, so that the user terminal displays the application window on the screen of the user terminal according to the intercepting area information. When the display area is changed, the area of the display area may be kept constant, and the size of the display area is generally of interest.
Similarly, the server may return the windowed display information to the user terminal using the RFB protocol.
The mode of returning the windowed display information to the user terminal by the server may be as follows: the method comprises the steps that a server firstly returns windowed display information carrying vertex coordinate information to a user terminal according to a window display request of the user terminal, and the user terminal firstly receives the vertex coordinate information in the windowed display information returned by the server; then, the user terminal sends an update display request to the server; and the server returns the intercepted area information of the application window requested to be displayed by the user terminal to the user terminal through the windowed display information after receiving the update display request. At this time, the user terminal receives the intercepting area information in the windowed display information returned by the server after receiving the update display request, and finally the user terminal displays the application window on the screen according to the vertex coordinate information and the intercepting area information in the windowed display information. In this embodiment, when the user terminal needs to update information displayed on its screen, an update display request needs to be sent to the server.
In addition, the way for the server to return the windowed display information to the user terminal can be as follows: the method comprises the steps that a server firstly returns windowed display information carrying vertex coordinate information to a user terminal according to a window display request of the user terminal, and the user terminal firstly receives the vertex coordinate information in the windowed display information returned by the server; then, the server may preset an update time, and when the interception area information corresponding to the application window is set, the server starts to time the update time in a timer, a counter, or the like, and when the update time arrives, actively returns the interception area information of the set application window to the user terminal through the windowed display information. For the user terminal, after receiving the vertex coordinate information, continuously receiving interception area information in the windowed display information returned by the server after the preset updating time is reached, and displaying the corresponding application window on the screen according to the vertex coordinate information and the interception area information in the windowed display information.
In order to maintain the stability of the display image of the user terminal, the server continuously sends windowed display information to the user terminal at a certain frequency during the period that the user terminal displays a certain application window or the whole desktop, so that the screen of the user terminal is refreshed, and the display stability is maintained.
In this embodiment, when the user terminal selects an application window, the user terminal sends an identifier acquisition request to the server to acquire a handle identifier of the application window, and then sends a windowing display request carrying the handle identifier to the server, so that the server returns windowing display information required for windowing display, and further, the application window is displayed according to the windowing display information. Compared with the prior art of performing remote display by taking a desktop as granularity, the embodiment allows a user to only care about the running condition of one application program or document within a certain time, avoids the situation that the user disperses a great deal of energy to switching operation in the using process, and saves the waste of remote display in time; in addition, what this embodiment transmits is the information that displays a certain application window and needs, compared with the information that displays the whole desktop needs, its information amount is much smaller, has saved the flowrate, has reduced the flowrate overhead in the remote display technology. Moreover, on the basis of desktop display, the method and the device achieve the purpose of displaying a certain application window in an appointed mode, bring great convenience to the user for controlling and accessing the application window, enable the user to control the application window through touch operation in the mode, and greatly improve the convenience of the user in operation.
Fig. 2 is a flowchart of a remote application window display method according to another embodiment of the present invention. As shown in fig. 2, the method of the present embodiment includes:
step 200, the user terminal judges whether the windowed display function is started; if the result is yes, that is, the windowing display function of the user terminal is turned on, executing step 201; otherwise, step 205 is performed.
In this embodiment, the user terminal supports not only the windowing display function but also the desktop display function.
Which display function the user terminal uses may be set, e.g. the user may manually set which display function is enabled.
The user terminal can judge whether to start the windowing display function by judging the setting parameter of the display function.
Step 201, the user terminal sends a notification message to the server to notify the server that the windowing display function of the user terminal is started, and step 202 is executed.
When the user terminal determines that the windowing display function is started, a notification message is sent to the server to notify the server that the windowing display function is started, so that the server executes corresponding operation after receiving a windowing display request of the user terminal.
Step 202, the user terminal selects an application window, and sends an identifier obtaining request to a remote server in the virtualization environment, so that the server returns a handle identifier corresponding to the application window, and step 203 is executed.
For example: the user terminal can transmit the operations of a mouse, a keyboard and the like of the user terminal to the server through the virtual machine client software to operate the software or resources on the server. The user terminal may select a certain application window in this way.
When the user terminal selects the application window, the user terminal sends an identification acquisition request to the server to request the server to return a handle identification of the application window, and lays a foundation for requesting to display the application window.
For other descriptions of step 202, reference may be made to the description of step 101, which is not repeated herein.
Step 203, the user terminal receives the handle identifier returned by the server, generates a windowing display request carrying the handle identifier, sends the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request, and executes step 204.
And step 204, the user terminal receives the windowed display information corresponding to the application window returned by the server, displays the application window on the screen of the user terminal according to the windowed display information, and ends the operation.
Step 203 and step 204 can refer to the description of step 102 and step 103, and are not described herein again.
Step 205, the user terminal sends a desktop display request to the server, and displays the whole desktop according to the desktop display information returned by the server.
When the windowing display function of the user terminal is not started, the fact that the desktop display function is started by the user terminal is meant, and then the user terminal sends a desktop display request to the server. The server returns information (namely desktop display information) required for displaying the whole desktop to the user terminal according to the desktop display request, and the user terminal performs display adjustment, coordinate synchronization and other operations according to the desktop display information to realize display of the whole desktop.
This step is similar to the prior art and will not be discussed in detail here.
In the embodiment, the user terminal supports desktop level display and window level display at the same time, and allows the user to set the display mode, thereby improving the flexibility of remote display.
Fig. 3 is a flowchart of a remote application window display method according to another embodiment of the present invention. As shown in fig. 3, the method of the present embodiment includes:
step 300, the user terminal sends a window traversal request to the server to request information of all currently opened application windows from the server.
In this embodiment, the user terminal supports a windowing display function, and may also support a desktop display function.
Preferably, before performing step 300, the user terminal may determine that its windowing display function is already turned on, but is not limited thereto. For example: the user terminal may not perform the operation of determining whether the windowed display function is turned on before performing step 300.
For example: the user terminal may send a window traversal request to the server through the RFB protocol at an initial stage. And after receiving the window traversal request, the server acquires the information of all currently opened application windows of the user terminal and returns the information to the user terminal. Then, the server obtains information of all application windows opened by the user terminal and sends the information to the user terminal through the RFB protocol. The information of each application window may be, for example, a name and handle identification of the application window.
Step 301, the user terminal receives the names and handle identifiers of all opened application windows returned by the server, and displays the names and handle identifiers of all opened application windows on the screen, so that the user can select the application windows to be displayed.
After receiving the names and handle identifiers of all opened application windows returned by the server, the user terminal can display the names and handle identifiers of all opened application windows on the screen thereof in a form of, but not limited to, a list. Therefore, the user can see all the currently opened application windows and information thereof of the user terminal, so that the user can select the application window to be displayed on one hand, and the user is allowed to switch the application window to be displayed on the other hand, namely, the display switching among the application windows is realized.
Further, in this step, when the user terminal displays information of all opened application windows on its screen, a desktop display option may also be added on the screen for the user to select to switch from the state of displaying the application windows to the state of displaying the desktop. By adding the desktop display option, the user is allowed to switch from the state of displaying the application window to the state of displaying the whole desktop.
It should be noted that the operation of switching from the window display state to the desktop display state by the user through the desktop display option is the same as the operation flow of requesting to display a certain application window by the user terminal, that is, a desktop display request needs to be sent to the server, and then the entire desktop can be displayed after receiving the desktop display information sent by the server after receiving the update display request or after the preset update time arrives, which is different from the operation of directly performing the desktop display in the prior art. By the method, the operation flows can be consistent when the display is carried out in any display mode, and the method is favorable for implementation.
Step 302, the user terminal selects an application window and sends an identifier acquisition request to a remote server in the virtualized environment, so that the server returns a handle identifier corresponding to the application window.
In this embodiment, the user terminal may transmit operations such as a mouse and a keyboard of the user terminal to the server through the virtual machine client software to select an application window. In addition, the user terminal may also select the application window through information of the application window displayed on the screen, for example, a certain application window may be selected through a click operation. In a condition that the user terminal displays information of all opened application windows, the user terminal preferably selects an application window using the displayed information.
No matter how the user terminal selects the application window, when the application window is selected, an identification acquisition request is sent to the server.
For other descriptions of this step, reference may be made to the description of step 101, which is not described herein again.
And step 303, the user terminal receives the handle identifier returned by the server, generates a windowing display request carrying the handle identifier, and sends the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request.
And step 304, the user terminal receives the windowed display information corresponding to the application window returned by the server, and displays the application window on the screen of the user terminal according to the windowed display information.
Wherein, the above step 303 and step 304 are described in detail in step 102 and step 103, and are not described herein again.
In the embodiment, the user terminal sends the window traversal request to the server to acquire the information of all the opened application windows, and selects the application windows based on the information, so that the operation of selecting the application windows to be displayed by the user terminal is simplified, and the time efficiency of remote display is further improved. In addition, the user terminal displays the information of all opened application windows on the screen in the form of a list and the like, so that the user can conveniently switch the application windows in the process of displaying a certain application window, namely, switch from displaying a certain application window to displaying another application window.
In the above embodiment, the user terminal sends the window traversal request in the initial stage to obtain information of all opened application windows, but is not limited thereto. For example: the user terminal can send a window traversal request to the server at any time to acquire information of all opened application windows. For example: the user terminal may send a window traversal request to the server in the process of displaying a certain application window, obtain information of all opened application windows, and display the information on the screen in some way (e.g., a list). The information of all opened application windows can be displayed in a manner of placing the information of all opened application windows on a certain corner of the screen in a small window form during the process of displaying the application windows.
Based on the information that the user terminal acquires and displays all opened application windows, when the user terminal needs to switch the displayed application windows, the user terminal can select a new application window through the displayed information of all opened application windows, and send a window switching request carrying a handle identifier of the new application window to the server. In this case, the handle identification of the new application window is known. And the server identifies a new application window according to the handle identifier in the window switching request, and then sets the windowed display information corresponding to the new application window. After the windowing display information is set, the server sends the windowing display information corresponding to the new application window to the user terminal. The method for setting the windowed display information corresponding to the new application window by the server is the same as the previously described method for setting the windowed display information corresponding to the application window, and is not described herein again.
The user terminal may first obtain vertex coordinate information of a new application window returned by the server through the windowed display information, and then send an update display request to the server, so that the server returns the intercepting region information corresponding to the new application window. Or after the server returns the vertex coordinate information of the new application window to the user terminal through the windowed display information, according to the preset updating time, after the updating time is up, the server actively returns the intercepted area information corresponding to the new application window to the user terminal through the windowed display information.
And for the user terminal, receiving windowing display information corresponding to the new application window returned by the server, and displaying the new application window on a screen of the user terminal according to the vertex coordinate information and the intercepting area information in the windowing display information.
In this embodiment, the user terminal obtains and displays information of all opened application windows, and based on the information, dynamic switching before the application windows is realized, and the method has the advantages of being simple to realize, high in switching efficiency and the like. In addition, the embodiment realizes the switching of the dynamic application window, and achieves the effect of multitasking. In the prior art, under a remote desktop multitasking operation environment, application programs can only be switched by the same method as that of switching the application programs on a computer, so that inconvenience is brought to a user when the operation is realized on a user terminal, and great convenience is brought to the user operation because the application windows are freely switched in the operation process.
Fig. 4 is a schematic structural diagram of a user terminal according to an embodiment of the present invention. As shown in fig. 4, the user terminal of this embodiment includes: a selection sending module 41, a generation sending module 42 and a first receiving display module 43.
The selection sending module 41 is connected to the server, and configured to select an application window and send an identifier obtaining request to a remote server in the virtualization environment, so that the server returns a handle identifier corresponding to the application window. And the generating and sending module 42 is connected with the server and is used for receiving the handle identifier returned by the server, generating a windowing display request carrying the handle identifier, and sending the windowing display request to the server so that the server sets windowing display information corresponding to the application window according to the windowing display request. And the first receiving and displaying module 43 is connected to the server, and is configured to receive windowed display information corresponding to the application window returned by the server, and display the application user window on the screen of the user terminal according to the windowed display information.
The first receiving and displaying module 43 may be specifically configured to first receive vertex coordinate information in the window displaying information returned by the server; and then, sending an updating display request to the server, receiving intercepting region information in the windowed display information returned by the server after receiving the updating display request, and finally displaying the application window on a screen according to the vertex coordinate information and the intercepting region information in the windowed display information.
In addition, the first receiving and displaying module 43 may be further specifically configured to receive vertex coordinate information in the window displaying information returned by the server first; and then, receiving interception area information in the windowed display information returned by the server after the preset updating time is reached, and displaying the corresponding application window on the screen according to the vertex coordinate information and the interception area information in the windowed display information.
Each functional module of the user terminal in this embodiment may be configured to execute the process of the remote application window display method shown in fig. 1, and specific working principles thereof are not described again, for details, see description of the method embodiment.
When the user terminal selects the application window, the user terminal sends an identifier acquisition request to the server to acquire the handle identifier of the application window, and then sends a windowing display request carrying the handle identifier to the server, so that the server returns windowing display information required by windowing display, and the application window is displayed according to the windowing display information. Compared with the prior art of performing remote display by taking a desktop as granularity, the user terminal allows the user to only care about the running condition of one application program or document within a certain time, thereby avoiding that the user disperses a great deal of energy to switching operation in the using process and saving the waste of remote display on time; in addition, the user terminal of the embodiment performs appointed display of a certain application window on the basis of desktop display, brings great convenience to the user in controlling and accessing the application window, and enables the user to control the application window through touch operation in such a way, thereby greatly improving the convenience in user operation.
Fig. 5 is a schematic structural diagram of a user terminal according to another embodiment of the present invention. This embodiment is implemented based on the embodiment shown in fig. 4, and as shown in fig. 5, the user terminal of this embodiment further includes: a judging module 51 and a sending informing module 52.
The determining module 51 is configured to determine whether the windowing display function is turned on before the selection sending module 41 executes an operation of selecting an application window and sending an identifier obtaining request to a remote server in the virtualization environment, so that the server returns a handle identifier corresponding to the application window.
And a sending notification module 52, connected to the determination module 51 and the server, for sending a notification message to the server to notify the server that the windowing display function of the user terminal is turned on when the determination result of the determination module 51 is yes.
The functional module may be configured to execute a corresponding process in the remote application window display method shown in fig. 2, and specific working principles thereof are not described again, for details, see description of embodiments of the method.
Further, the user terminal of this embodiment further includes: a traversal request sending module 53, a second receiving and displaying module 54, and an adding module 55.
The traversal request sending module 53 is connected to the server, and configured to send a window traversal request to the server to request, from the server, information of all currently opened application windows. And a second receiving and displaying module 54, connected to the server, for receiving the names and handle identifiers of all opened application windows returned by the server, and displaying the names and handle identifiers of all opened application windows on the screen, so that the user can select an application window to be displayed. And the adding module 55 is connected to the second receiving and displaying module 54, and is configured to add a desktop display option on the screen when the second receiving and displaying module 54 displays the names and handle identifiers of all opened application windows on the screen, so that the user can select to switch from the state of displaying the application windows to the state of displaying the desktop.
Further, the user terminal of this embodiment further includes: a switching request sending module 56 and a third receiving and displaying module 57.
And a switching request sending module 56, connected to the server, for sending a window switching request carrying the handle identifier of the new application window to the server when the user selects the new application window according to the names and handle identifiers of all opened application windows displayed on the screen, so that the server sets the windowed display information corresponding to the new application window according to the window switching request. And a third receiving and displaying module 57, connected to the server, for receiving the windowed display information corresponding to the new application window returned by the server, and displaying the new application window on the screen of the user terminal according to the windowed display information.
The functional modules may be configured to execute corresponding processes in the remote application window display method shown in fig. 3, and specific working principles thereof are not described again, for details, see description of embodiments of the method.
The user terminal of the embodiment, by acquiring and displaying information of all opened application windows and realizing dynamic switching before the application windows based on the information, has the advantages of simple realization, high switching efficiency and the like. In addition, the user terminal of the embodiment realizes the switching of the dynamic application window, and achieves the effect of multitasking. In the prior art, under a remote desktop multitasking operation environment, application programs can only be switched by the same method as that of switching the application programs on a computer, so that inconvenience is brought to a user when the operation is realized on a user terminal, and great convenience is brought to the user operation because the user terminal of the embodiment realizes free switching of application windows in the operation process.
Fig. 6 is a schematic structural diagram of a server according to an embodiment of the present invention. As shown in fig. 6, the server of the present embodiment includes: a first receiving module 61, a first returning module 62, a second receiving module 63, an acquisition setting module 64, and a second returning module 65.
The first receiving module 61 is connected to the user terminal, and is configured to receive an identifier obtaining request sent by the user terminal when the user terminal selects an application window. And a first returning module 62, connected to the first receiving module 61 and the user terminal, for returning the handle identifier corresponding to the application window to the user terminal. And a second receiving module 63, connected to the user terminal, for receiving a windowed display request carrying the handle identifier sent by the user terminal. And the acquisition setting module 64 is connected with the second receiving module 63 and the user terminal, and is used for setting the windowed display information corresponding to the application window according to the windowed display request. And a second returning module 65, connected to the obtaining and setting module 64 and the user terminal, configured to return windowed display information corresponding to the application window to the user terminal, so that the user terminal displays the application window on a screen of the user terminal according to the windowed display information.
Each functional module of the server in this embodiment may be configured to execute a corresponding process in any one of the method embodiments in fig. 1 to fig. 3, and specific working principles thereof are not described again, for details, see description of the method embodiments.
The server of this embodiment is matched with the user terminal provided in each embodiment of the present invention, returns a handle identifier of an application window to the server according to an identifier acquisition request sent by the user terminal, and returns windowed display information to the server according to a windowed display request carrying the handle identifier sent by the user terminal, so that the user terminal realizes display of the application window according to the windowed display information. Compared with the prior art of performing remote display by taking a desktop as granularity, the server of the embodiment enables the user terminal to display a certain application window, so that the user is allowed to only care about the running condition of one application program or document within a certain time, thereby avoiding that the user disperses a great deal of energy to the switching operation in the using process and saving the waste of remote display on time; in addition, the server of the embodiment enables the user terminal to appoint and display a certain application window on the basis of desktop display, brings great convenience to the user for controlling and accessing the application window, enables the user to control the application window through touch operation through the mode, and greatly improves the convenience in user operation.
Those of ordinary skill in the art will understand that: all or part of the steps for implementing the method embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer readable storage medium, and when executed, the program performs the steps including the method embodiments; and the aforementioned storage medium includes: various media that can store program codes, such as ROM, RAM, magnetic or optical disks.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.
Claims (7)
1. A remote application window display method, comprising:
the method comprises the steps that a user terminal selects an application window and sends an identification obtaining request to a remote server in a virtualization environment, so that the server returns a handle identification corresponding to the application window;
the user terminal receives the handle identifier returned by the server, generates a windowing display request carrying the handle identifier, and sends the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request;
the user terminal receives windowed display information corresponding to the application window returned by the server, and displays the application window on a screen of the user terminal according to the windowed display information;
the user terminal selects an application window and sends an identifier acquisition request to the server, so that the server returns an identifier corresponding to the application window, wherein the identifier acquisition request comprises the following steps:
the user terminal judges whether a windowing display function is started or not, and sends a notification message to the server to notify the server that the windowing display function of the user terminal is started when the windowing display function is judged to be started;
the step that the user terminal receives the windowing display information corresponding to the application window returned by the server, and displays the application window on the screen of the user terminal according to the windowing display information comprises the following steps:
the user terminal receives vertex coordinate information in window display information corresponding to the application window returned by the server, sends an updating display request to the server, receives intercepting area information in the window display information corresponding to the application window returned by the server after receiving the updating display request, and then displays the application window on a screen of the user terminal according to the vertex coordinate information and the intercepting area information in the window display information; or,
and the user terminal receives the vertex coordinate information in the window display information corresponding to the application window returned by the server, receives the interception area information in the window display information corresponding to the application window returned by the server after the preset updating time is reached, and then displays the application window on the screen of the user terminal according to the vertex coordinate information and the interception area information in the window display information.
2. The remote application window display method of claim 1, further comprising:
the user terminal sends a window traversal request to the server to request information of all currently opened application windows from the server;
and the user terminal receives the names and the handle identifications of all opened application windows returned by the server, displays the names and the handle identifications of all opened application windows on the screen for a user to select the application window to be displayed, and adds a desktop display option on the screen for the user to select to switch from the state of displaying the application window to the state of displaying the desktop.
3. The remote application window display method of claim 2, further comprising:
when the user selects a new application window according to the names and handle identifiers of all opened application windows displayed on the screen, the user terminal sends a window switching request carrying the handle identifier of the new application window to the server, so that the server sets windowed display information corresponding to the new application window according to the window switching request;
and the user terminal receives the windowing display information corresponding to the new application window returned by the server, and displays the new application window on a screen of the user terminal according to the windowing display information.
4. A user terminal, comprising:
the selection sending module is used for selecting an application window and sending an identification obtaining request to a remote server in a virtualization environment so as to enable the server to return a handle identification corresponding to the application window;
a generating and sending module, configured to receive the handle identifier returned by the server, generate a windowing display request carrying the handle identifier, and send the windowing display request to the server, so that the server sets windowing display information corresponding to the application window according to the windowing display request;
the first receiving and displaying module is used for receiving windowed display information corresponding to the application window returned by the server and displaying the application user window on a screen of the user terminal according to the windowed display information;
further comprising:
the judging module is used for judging whether a windowing display function is started or not before the selection sending module executes the operation of selecting the application window and sending an identifier obtaining request to a remote server in a virtualization environment so as to enable the server to return a handle identifier corresponding to the application window;
the sending and informing module is used for sending an informing message to the server to inform the server that the windowing display function of the user terminal is started when the judgment result of the judging module is yes;
the first receiving and displaying module is specifically configured to:
receiving vertex coordinate information in window display information corresponding to the application window returned by the server, sending an update display request to the server, receiving intercepting area information in the window display information corresponding to the application window returned by the server after receiving the update display request, and displaying the application window on a screen of the user terminal according to the vertex coordinate information and the intercepting area information in the window display information; or,
and receiving vertex coordinate information in window display information corresponding to the application window returned by the server, receiving interception area information in the window display information corresponding to the application window returned by the server after the preset updating time is reached, and displaying the application window on a screen of the user terminal according to the vertex coordinate information and the interception area information in the window display information.
5. The user terminal according to claim 4, further comprising:
the traversal request sending module is used for sending a window traversal request to the server so as to request the information of all currently opened application windows from the server;
the second receiving and displaying module is used for receiving the names and the handle identifiers of all opened application windows returned by the server and displaying the names and the handle identifiers of all the opened application windows on the screen so that a user can select the application windows needing to be displayed;
and the adding module is used for adding desktop display options on the screen when the second receiving and displaying module displays the names and the handle identifications of all opened application windows on the screen, so that the user can select to switch from the state of displaying the application windows to the state of displaying the desktop.
6. The user terminal according to claim 5, further comprising:
a switching request sending module, configured to send a window switching request carrying a handle identifier of a new application window to the server when the user selects the new application window according to the names and handle identifiers of all opened application windows displayed on the screen, so that the server sets windowed display information corresponding to the new application window according to the window switching request;
and the third receiving and displaying module is used for receiving the windowed display information corresponding to the new application window returned by the server and displaying the new application window on the screen of the user terminal according to the windowed display information.
7. A server, comprising:
the first receiving module is used for receiving an identification acquisition request sent by a user terminal when an application window is selected;
the first returning module is used for returning the handle identifier corresponding to the application window to the user terminal;
the second receiving module is used for receiving a windowing display request which is sent by the user terminal and carries the handle identifier;
the acquisition setting module is used for setting the windowed display information corresponding to the application window according to the windowed display request;
the second returning module is used for returning the windowed display information corresponding to the application window to the user terminal so that the user terminal can display the application window on a screen of the user terminal according to the windowed display information;
the second returning module is specifically configured to return windowed display information corresponding to the application window to the user terminal, so that: the user terminal receives vertex coordinate information in window display information corresponding to the application window returned by the server, sends an updating display request to the server, receives intercepting area information in the window display information corresponding to the application window returned by the server after receiving the updating display request, and then displays the application window on a screen of the user terminal according to the vertex coordinate information and the intercepting area information in the window display information; or,
and the user terminal receives the vertex coordinate information in the window display information corresponding to the application window returned by the server, receives the interception area information in the window display information corresponding to the application window returned by the server after the preset updating time is reached, and then displays the application window on the screen of the user terminal according to the vertex coordinate information and the interception area information in the window display information.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110402091.8A CN102436350B (en) | 2011-12-06 | 2011-12-06 | Remote application window display method, server and user terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110402091.8A CN102436350B (en) | 2011-12-06 | 2011-12-06 | Remote application window display method, server and user terminal |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102436350A CN102436350A (en) | 2012-05-02 |
CN102436350B true CN102436350B (en) | 2014-11-12 |
Family
ID=45984437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110402091.8A Expired - Fee Related CN102436350B (en) | 2011-12-06 | 2011-12-06 | Remote application window display method, server and user terminal |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102436350B (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103959246B (en) * | 2012-08-22 | 2017-03-08 | 华为技术有限公司 | The transmission method of video in window, display packing, terminal, server and system |
CN103180851B (en) * | 2012-08-31 | 2016-05-25 | 华为技术有限公司 | Network platform method of operating and network platform equipment |
CN103049262B (en) * | 2012-12-12 | 2016-02-03 | 广州尚融网络科技有限公司 | Based on the window method of reducing of remote frame buffer memory |
CN108121491B (en) * | 2017-12-18 | 2021-02-09 | 威创集团股份有限公司 | Display method and device |
CN111078491B (en) * | 2019-10-12 | 2022-09-20 | 中国平安财产保险股份有限公司 | Monitoring information display method and device, monitoring terminal and computer storage medium |
CN112423101B (en) * | 2020-11-06 | 2023-01-13 | 深圳市创凯智能股份有限公司 | Remote display method, device, equipment and computer readable storage medium |
CN112685109B (en) * | 2020-12-03 | 2021-09-21 | 南京机敏软件科技有限公司 | Method and system for dynamically identifying and recognizing remote application window |
CN114327712B (en) * | 2021-12-24 | 2024-08-30 | 阿里巴巴(中国)有限公司 | Cloud application system, window management method and device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101924798A (en) * | 2010-09-08 | 2010-12-22 | 北京大学 | Transparent Android component loading method and system based on file types |
CN102004655A (en) * | 2010-11-25 | 2011-04-06 | 北京飞天诚信科技有限公司 | Device and method for automatically installing drivers |
CN102096574A (en) * | 2010-12-01 | 2011-06-15 | 广东威创视讯科技股份有限公司 | Multiwindow montage display method |
CN102118643A (en) * | 2009-12-30 | 2011-07-06 | 新奥特(北京)视频技术有限公司 | Network subtitle playing system and method |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7340046B2 (en) * | 2002-08-07 | 2008-03-04 | Cisco Technology, Inc. | Providing telephony services using intelligent end points |
EP1759289A4 (en) * | 2004-04-28 | 2008-08-20 | Fujitsu Ltd | Semantic task computing |
US8769428B2 (en) * | 2009-12-09 | 2014-07-01 | Citrix Systems, Inc. | Methods and systems for generating a combined display of taskbar button group entries generated on a local machine and on a remote machine |
-
2011
- 2011-12-06 CN CN201110402091.8A patent/CN102436350B/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102118643A (en) * | 2009-12-30 | 2011-07-06 | 新奥特(北京)视频技术有限公司 | Network subtitle playing system and method |
CN101924798A (en) * | 2010-09-08 | 2010-12-22 | 北京大学 | Transparent Android component loading method and system based on file types |
CN102004655A (en) * | 2010-11-25 | 2011-04-06 | 北京飞天诚信科技有限公司 | Device and method for automatically installing drivers |
CN102096574A (en) * | 2010-12-01 | 2011-06-15 | 广东威创视讯科技股份有限公司 | Multiwindow montage display method |
Also Published As
Publication number | Publication date |
---|---|
CN102436350A (en) | 2012-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102436350B (en) | Remote application window display method, server and user terminal | |
AU2019233201B2 (en) | Resource configuration method and apparatus, terminal, and storage medium | |
CN111433743B (en) | APP remote control method and related equipment | |
CN102752369B (en) | The supplying method of TV applications service and virtual content service platform | |
US20120117189A1 (en) | Method and apparatus for obtaining feedback from a device | |
CN107291456B (en) | Multi-screen display control method and system | |
CN111611091A (en) | Service calling method, device and medium for business object | |
US20110238498A1 (en) | Service stage for subscription management | |
CN102821150B (en) | Based on application management method and the Cloud Server of cloud service | |
WO2014018175A1 (en) | Providing access to a remote application via a web client | |
CN111866160B (en) | Multi-machine control method, device, equipment and storage medium | |
CN111813516A (en) | Resource control method and device, computer equipment and storage medium | |
WO2017045283A1 (en) | Method and device for controlling screen between terminals, and storage medium | |
CN109032587B (en) | Data stream management framework, method, terminal equipment and storage medium | |
CN114374602B (en) | Master control equipment configuration method and device, cloud server and storage medium | |
WO2018086454A1 (en) | Page data processing method and device | |
CN102866901A (en) | Wireless communication equipment startup image updating method and system, and wireless communication equipment | |
KR20180100371A (en) | Data transfer method and device | |
CN110858175A (en) | Test control method, master control equipment, controlled equipment and test system | |
KR20160147449A (en) | Apparatus and method for adaptive virtual desktop operating system service | |
WO2015117445A1 (en) | Method and device for processing task window | |
CN107086937B (en) | Monitoring method and device | |
CN111625312A (en) | APP skin changing method and device, electronic equipment and storage medium | |
CN111090533A (en) | Notice information sending method and device, electronic equipment and storage medium | |
CN112817593A (en) | Control page display method and device, storage medium and electronic device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20141112 Termination date: 20171206 |