CA2501658A1 - Presenting a merged view of remote application shortcuts from multiple providers - Google Patents

Presenting a merged view of remote application shortcuts from multiple providers Download PDF

Info

Publication number
CA2501658A1
CA2501658A1 CA002501658A CA2501658A CA2501658A1 CA 2501658 A1 CA2501658 A1 CA 2501658A1 CA 002501658 A CA002501658 A CA 002501658A CA 2501658 A CA2501658 A CA 2501658A CA 2501658 A1 CA2501658 A1 CA 2501658A1
Authority
CA
Canada
Prior art keywords
applications
user
remote
intranet
shortcuts
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.)
Abandoned
Application number
CA002501658A
Other languages
French (fr)
Inventor
Tad Dennis Brockway
Robert K. Leitman
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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CA2501658A1 publication Critical patent/CA2501658A1/en
Abandoned legal-status Critical Current

Links

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
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

Systems and methods for presenting a merged view of remotely installed applications to which a user has terminal server (TS) based access are described. In one aspect, a client computing device generates one or more shortcuts to one or more respective applications. Each of the applications is installed at one or more installation points in an Intranet. The client computing device is external to the Intranet. The one or more shortcuts are aggregated to present a merged view of the applications. The merged view is transparent of whether the applications are managed by different information sources on the Intranet and/or configured for remote TS-based execution by different ones of one or more installation points.

Description

>.
a I
RES G A ME GE VIEW OF REMOTE APPLICA ON
SHORT S M MUL LE PROVIDERS
TECHhIICAL FIELD
[0001] The invention pertains to remote terminal service application presentation.
BAC»GR~ OF ~E IIWENTION
[0002] Traditionally, application publishing involves installing and running a published application on a local machine. This may be performed by an administrator publishing packages that are subsequently downloaded and installed on administrator specified client machines. Depending on the application software, the hardware requirements for such a machine (the client) may be high. In addition, the installation itself rnay take significant amount of time, resources, and may even conflict with existing application instalIafiions.
[0003] In view of such conventional application publishing limitations, terminal services may be used in distributed computing environments to provide a thin client computing model to resources installed and executed in a corporate intranet. Using terminal services (TSs) allows a remote computing device (i.e., a client device that is outside of the intranet) to access an application installed on a corporate server, execute the application on the corporate server, and display the applications' user interface (I3I) on the remote client. Since the application is executed on the corporate server, TSs allow the remote client to take advantage of corporate infrastructure resources independent of whether the remote client has appropriate hardware and software to execute the resources locally on the client device.
[0004] An administrative entity, to configure a corporate intranet for specific user, groups of users, and/or client device access to an application, typically must install the application and specify explicit application access policies and default/custornized application behaviors. Since these corporate-end preparations are performed in advance of end-user access to the resources, these preparations generally do not negatively affect the final application use experience of the remote client user. Yet, even in view of such corporate-end preparations, the remote client Z 0 user must still undertake substantially labor intensive and time consuming procedures to determine what applications have been authorized for user access, remotely access, and then execute the applications) installed in a corporate intranet via TSs.
~~~~.F~. ~ce,today. a. ~~r -~~t sit vup a Vii~;ual Private Network (VPl~ connection to the corporate network, start a remote client, enter the name of the remote computer and the user's credenrials, then use TSs to connect tv a desktop, and start applications from that desktop. To make matters worse, these end-user activities must be performed by the consumer each and every time that the user desires to remotely access the applications via TS services.
[0006] In view of these substantially labor intensive and time consuming procedures that the remote client user typically needs to undertake to identify available applications on a private network for subsequent remote TS
execution, the remote client user cannot seamlessly identify available corporate resources for TS
access.
a s SUMl~JLA.RY QF THE INVF,~
[0007] Systems and methods for presenting a merged view of remotely installed applications to which a user has terminal server (TS) based access are described. In one aspect, a client computing device generates one yr more shortcuts to one or more respective applications. Each of the applications is installed at one or more installation points in an Intranet. The client computing device is external to the Ititranet. The one or more shortcuts are aggregated to present a merged view of the applications. The merged view is transparent of whether the applications are managed by different information sources on the Intranet and/or configured for remote TS-based execution by different ones of one or more installation points.
BRIEF DLSE:RZPTION E1F T'HE DRAWINGS
",. [OOO8j In the-fi~ures,.the left-most digit of a component reference nuraber identifies the particular figure in which the component first appears.
[0009] Fig. 1 illustrates an example of a suitable computing environment on which the subsequently described systems, apparatuses and methods for presenting a merged view of remote application shortcuts from multiple providers on a user's desktop may be fully or partially implemented.
[0010] Fig, 2 shows an exemplary procedure for a public network service for presenting a merged view of remote application shortcuts from multiple providers on a user's desktop.
[0011] Fig. 3 shows exemplary component data flow for a remote client computer to discover remote applicafiions installed on an office computer 102 in a local area network. The remote application discovery is accomplished via a Web service that is accessed via a public network such as the Internet.

[0012) Fig. 4 shows an exemplary procedure to enumerate and present applications installed far terminal server access on an Intranet to a user of a client computing device that is external to the Intranet.
[Ofll~] Fig. 5 illustrates an example of a suitable computing environment on which the subsequently described systems, apparatuses and methods for a Web service for remote application discovery may be implemented.
DETAILED D SCItIPTI4N O TiIIE P D . N"T
[ti014] The following described systems arid methpds fox presenting a merged view of remote application shortcuts from multiple providers on a users desktop substantially simplify a remote client's experieace when: .accessing applications for terminal service execution by a seFVer on an organizational intranet.
One reason for this simplified access is because the systems and methods discover applications that have b~ conf-xgur~ed for remote access across vny ~x~ux~ber of . .
corporate irttranet application installation points. To this end, the systems and methods allow an organizational entity to publish remote applications using a variety of information source mechanisms and then provide a single aggregated view of the applications to remote clients over the Internet. Such application publishing is referred to as Remote Application Publishing (RAP). Remote client computer device discovery of applications that have been published via RAP for access by a user, group of users, and/or a specific computing device is referred to as remote application discovery.
[0015] More specifically, an entity in an organizational intranet installs, or deploys some number of applications on servers andlor end-user computing devices f in the corporate intranet. For instance, an administrative entity may install an .
application an a corporate server far remote TS-based access. The administrative entity uses RAP to create associations between the deployed/applications and specific user(s), groups) of users, and/or specific client computing device(s).
These associations are then stored in one or more databases/information sources.
Such databases include, for example, Systems Management Server (SMS) and/or a 5 directory service (databases). In another example, a user of a computer (e.g., a general purpose computer, workstation, etc,) in the intranet uses RAP to specify that an application deployed on the computer is to be available for remote TS-based access by the user.
[001 ~] A remote client device, independent of whether it is outside of the corporate firewall, connected to the corporate network over a Virtual Private Network (VPN), and/or so on, discovers these applications via a novel RAP Web Service (RWS) deployed on a public network such as the Internet. In one implementation, an end-user of the remote client device uses a Web browser or user interface shell to discover%enunierate each ~pplica~ion associated with the remote client device or the end-user. Responsive to receiving the RAP discovery request, the RWS queries the databases to identify each application associated with the remote client device or a single user associated with the remote client device. RWS
hides the details of the protocols for communicating with each of the different databases being queried for applications.
[0017] After identifying one or more applications configured for remote client TS-based access by the user, and independent of the number and types of installation points associated with the applications, the RWS aggregates each identified application and its intranet installation point into a single comprehensive list of applications. The aggregated list is sent to the requesting remote client device for presentation, for instance, as shortcuts in a user interface (UI) shell, a Web browser window, and/or so on. Since the presented shortcuts represent an aggregate of the remotely applications over one or more application sources, it is completely transparent to the end-user whether the RAP shortcuts are coming from a single source (installation point) or from multiple disparate information souxces.
In this manner, authorized users may seamlessly discover and use applications deployed on terminal server (TS) farms andlor on their office computer from a remote location. By presenting such shortcuts via UI shell improvements, the end user is provided with seamless TS-based access to corporate resources deployed across any number of remote servers and/or desktops.
[0018] These and . other aspects of the systems and methods for a Web Service far remote application discovery are now described in greater detail.
An Ezemnlary System for Remote Ap~Qltcadon Discovery [OOI9] Turning to the drawings, wherein like reference numerals refer to like elements,. the invention is illustrated as being implemented. in a suit ble computing environment. Although not required, the invention is described in the general context of computer-executable instructions, such as program modules, being executed by a personal computer. Program modules generally include routines, programs, objects, components, data structures, etc., that perform particular tasks or implement particular abstract data types.
Installine Analications an an Orsanizational Tntranet for Remote Discovery [0020] Fig. 1 illustrates an example of a suitable computing environment 100 on which the subsequently described systems, apparatuses and methods for a Web Service for remote application discovery may be fully or partially implemented, Environment 100 includes a general purpose computing device in the form of an office computer 102 for associating applications) 104 (e.g., 104-1 and 104-2) with a specific user(s), groups) of users, and/or remote client computing devices) 106.

The office computer is behind a corporate fuewall 108-1 in an intranet. In this implementation, the intranet includes sub-network 110 that sits between a trusted internal network-LAN 112--and an unfrosted external network 113 such as the Internet. Sub-network 110 is a demilitarized zone {DMZ) delineated by firewalls 108-1 and 108-Z. Sub-network 110 includes RAP VVeb server 114 for aggregating terminal services remote application informationlshortcuts from multiple sources so that they can be enumerated by a user of a remote client device 106 over the Internet.
[002I] Applications) 104 are deployed and published on one or more installation points of the LAN 112. For example, applications 104-1.. have been published on one or more once computers) 102, and/or applications 1'04-2 have been published on one or more application servers) 116. To publish an application 104-1 on an once computer 102, a user of the office computer 10?
~terfaces with Rt~P wizard ~ 18 for personal .p~tblishin~, . The RAP wizaxd~:
allows the user to specify the application to be published and generate map 120. Map associates each office computer 102 to the specific user. Map 120 is subsequently utilized to provide the user with remote application discovery to published applications 104-1 for subsequent remote terminal. server (TS} access by the user, as described below.
[0022] To publish an application 104-2 on an application server 116, an administrative entity uses a system policy editor or other administrative application to associate a specific user(s), groups) of users, andJor remote client devices) 106 to respective ones of the applications 104..2. The administrative entity uses the installation package installer (e.g., MSI) wizard 119 to generate an installation package (e.g., installation packages 121-1 through 121-3). An installation package 121 contains information about an application 104-2 sufficient to point to g an installation point on one or more application servers 116. For instance, in one implementation, each installation package 121 specifies, a name of an application 104-2 and the name of the application server 116 (e.g., alias,1P
address, etc.).
[0023] Installation packages 12I, when associated with applications) 104 published on an office computer 102 and/or application servers) 116, may be stored on one or mare databases (information sources). Any number of databases using any type of database access technology (e:g., LDAP, etc.) as a function of the specific architectural implementations of the LAN 112 can be used . to store IO installation packages 121. In one implementation, installation package 121 is stored an a database as installation package 12I-1. associated with a directory service 122 of a domain controller (not shown). In another implementation, installation package 121-1 is stored as installation package 121-2 on database maaiaged wia System Maiiagezrient Server (SIViS) 1-28. The diirectory seiwice I S and SMS 128 provide respective network services to identify LAN 112 resources, and male them accessible to users and applications.
[0024] For instance, the directory service 122 includes per-user information such as the List of published applications I04, as well as other information, such as firewall 108 navigation configuration. Although applications) 104 published an an 20 office computer 102 may be stored on one or more databases, these office computer mappings 120-1 may also be stored only on the associated office computer 102.
The RAP Web Server Service [0025] Referring to Fig. 1, RAP Web server 114 aggregates terminal services I
25 remote application information/shortcuts from multiple sources so that they can be enumerated by a user of a remote client device 106 over the Internet. To this end, the RAP Web server 114 includes RAP Web service (RWS) 130 for receiving a discovery request 132 from a remote client device 106, for instance using Simple Object Access Pratocol (SOAP-a known lightweight protocol intended for exchanging structured information in a distributed environment. Since the discovery request 132 communicated to the RWS 130 via SOAP, the remote client 106 does not need to establish a Virtual Private Network (VPN) connection to the LAN i to obtain results of discovery request 132, as described below.
(0026] In this implementation, the RWS 130 utilizes an Internet Information Server (not shown) for services such as authentication, threading, and HTTP
handling.
[ti027] Responsive to receiving the remote application discovery request, the RWS 130 interfaces with each of multiple possible intranet remote application information source accessor modules 134 (e.g., modules I34-1 through 1.34-3) to geneiate an aggiregats list of discoveied remote applications (aggregate list 136):
Each accessor module 134-1 thmugh 134-3 is designed to interface with a particular type of data source, or database via implemented application programming interfaces (APIs) and sequences of operation configured to communicate with the particular data souxce. There may be any number of accessor modules 134 as a function of the desired deployment of applications) 104 for Internet TS-access, and as a function of the particular architectural implementation of the LAN 112.
[0428] In this manner, an administrator of LAN 112 can use any number and combination of methods to publish applications 104. For example, in a corporate environment, an administrator may choose to use Software Update Services (SUS) technology in conjunctian with a directory service 122 to publish applications 104.
Another method could be Systems Management Server (SMS). In a Roaming enviromnent, a user could publish his applications to a central location on a personal office computer 102, or could simply use a corporate identity to publish applications in a directory service 122. In a home environment, a home-user could publish applications using a known service bus technology.
5 (0029) In this implementation, for example, accessor modules 134 include SMS accessor 134-I, directory service aceessor 134-2, and workstation accessor 134-3. The SMS accessor 134-1 sends a get applications request I38 ("request") to the SMS Server 128, for example, via HTTP. Responsive to receiving a get request 138, the SMS server evaluates mapping 1203 to detenmiine 10 whether the user of the remote client 106 is associated with any applications I04 deployed within the domain of the SMS server 128. If so, the SMS server sends a get application response 140 ("response") identifying the associated applications) 104 and their respective installation point(s}--e.g., computer(s} 102, application servers) 116, etc.--back tv the S1VIS accesso~, which in turn;..
returns the response 140 to the Web service 130.
(0030] In one implementation, a remote application discovery response 140 is a text file (e.g., XML, RDP, and/or the like) including parameters that are useful to determine where the actual application 104 resides. Such parameters include, for example, a server name, an application path, redirection settings, file extensions associated with the remote application 104, etc.
[0031] For puzposes of simplicity of discussion and representation, a single get applications) request 138 and a single get application response 140 is shown.
That is, single request 138 and single response 140 represent respective get requests and responses from respective ones of the accessor modules 134, although separate get requests 138 and get responses 140 showing a respective get application request and get application response from each type of accessor module 134 could also have been shown.
[0032] In this implementation, directory service accessor (DSA) 130-2 interfaces with the directory service 122, which in this example, is Active Directory ~. The DSA sends a respective get applications request 138 to the directory service 122, for example, using LDAP-a common protocol for interfacing with a directory service. Responsive to receiving request 138, the directory service evaluates installed application-to-user mapping 120. This evaluation determines whether the user of the remote client device 106 is authorized / associated with specific ones of the applications 104. Results of this evaluation, including respective installation points) of any such applications 104, are returned to the Web service 130 by the directory service 122 as a respective response 140.
[0033] Fersonal computer (PC) accessor 134-3 enumerates applications 104 1 installed for Internet-based reiriote application discovery on ' an office computer 102 on LAN 112. To this end, PC accessor 134-3 identifies the Intranet address of the office computer 102--the office computer having been assigned to the user of the remote computing device 106. To this end, the PC accessor 134-communicates a get resource request I39 to directory service 122. The get resource request 139 indicates corporate identity of the user; the corporate identity being set-up in advance by an administrative entity on LAN 112 and subsequently determined by RAF setup module 148, as described in greater detail below. Responsive to receiving the get resource request 139, the directory service identifies the Intranet address (not shown) of the user's office computer 102 (e.g., an IP address, NAT-based address, alias, and/or the like). The directory service communicates the network address back to the PC accessor module I34-3.

[0034] In one implementation, the remote computing device 102 of the user is not connected or otherwise "tunneled" (via a VPN connection) into the Intranet of LAN 112 when the get resource request 139 is communicated the directory service 122. Instead, the RWS 130 acts as an intermediary by communicating with directory service 122. In this implementation, the get resource request 139 may be communicated via LDAP, or some other appropriate prptocol.
[0035] Responsive to receiving the Intrariet address of the user's office computer.102, PC accessor 134-3 sends a respective get applications request 138 to RAP Web service 142-the RA.P Vt~eb service 142 is deployed on the user's office computer 102. In one implementation, the get applications request 138 is communicated via SOAP.
[0036] Responsive to receiving a respective get applications) request 138, Web service 142 interfaces with directory services 122 to retrieve ~~~a~Qh ~sociated with the applications) 104 iristaued an LAN l:x 2 . t correspond to the user's office computer. Web service 142 interfaces with shell accessox 144 to identify installed applications) 104-1 on the desktop/shell of the user's office computer 102. Techniques for identifying applications installed on a computer, for instance, via an operating system service, are known. This information includes respective installation points) of any such applications installed on the user's desktop/workspace and any information needed to execute the applications) via a TS client session with the remote client device 106.
This information is returned to RWS 130 by the directory service 122 as a respective get applications) response 140.
[0037] RAP Web service (RWS) 130 receives responses) 140 from respective ones of the accessor module{s) 134. The RWS 130 generates aggregate list 136 from the data included in the received responses) 140. RWS 130 sends E

aggregate list 136 to the remote client device 106 that initiated the remote application discovery request 132. In one implementation, the aggregate list is communicated to the remote client device 106 via SOAP/HTTP. Additionally, although list 136 is referred to as an aggregate list, the respective get application responses I40 need not be combined to form an aggregate, but might also be communicated as lists) 140 comprising discovered installed applications) 104 information from one or more the data sources (e.g., server(s), office computer(s), and/or the like).
[0038] Fig. 2 shows an exemplary procedure 200 for a public network L 0 service for remote application discovery. For purposes of discussion and illustration, the operations of Fig. 2 are described with respect to corresponding components of Fig. 1. (In the figures, the left-most digit of a component reference number identifies the particular figure in which the component first appears.) [0039) At blook 202 a rerriote applicatio~a discovery request (RADR) I32 (Fig. 1) is received by the RAP Web Server (RWS) 130 from a remote client computing device 106. As described above, the RWS 130 is located in an Intranet such as LAN 112. The remote client computing device 106 is external to the LAN 112. For instance, in one implementation, the remote client I06 is coupled to the RWS 130 across a public external network I 13 such as the Internet.
[0040] At block 204, the RWS 130 requests application data from one or more information sources deployed on the Intranet. Such a request may be made via respective rnessage(s) 138. In one implementation, the RWS 130 send one message 138 to each respective data source. The application data corresponds to applications) 104 installed and associated with the user of the remote computing device 106. The information sources include, for example, office computers 102, directory services 122, and/or SMS server 128. ', [0041] In one embodiment, the remote application discovery request 132 indicates the one or more data sources of interest as well as a local login and/or a corporate identity of the user of the remote computing device 106. For instance, the request 132 may indicate that applications 104-1-those installed on an office computer 102 associated with the user-are to be discovered. A corporate identify corresponds to the user's identify on the LAN 112.
[0042] At block 206, the RWS 130 receives the requested application data, for instance, via respective responses) 140 from respective ones of the data sources on the Intranet. At block 208, the RWS 130 communicates the application data (e.g., via messages) 136) to the requesting client device 102, and in satisfaction of the remote application discovery request 132 sent to the RAP Web server 114.
[0043] We now describe exemplary aspects of the remote client computing device 106.
The Remote Client Device [0044] The following described components allow remote client device 106 to automatically enumerate (via a public network) applications for remote access that are installed on the user's office computer 102 in the end-user's office on a private Intranet. In this embodiment, remote client computing device 106 ("remote client") includes wizard 146 for gathering user credentials (e.g., corporate iden;tity), and using received configuration data to configure the remote client 106 for TS
access and to initiate remote application discovery via the RWS 130. Wizard provides roaming plug-in services for determination of a roaming knowledge worker environment. It communicates with the RAP Web service 130 to get the list of remote applications 104 published to the user. For instance, wizard 146 obtains user credentials for access to LAN 112. Wizard I46, via RAP setup module 148, sends these credentials to the RAP wizard 118 of the user's office computer 102.
RAP wizard 118 sends these credentials to the remote client configuration (RCC) module 1S0 for verification of user access to the LAN112 (e.g., via an enterprise authentication service). If the user is authorized to access LAN resources, the RAP
wizard 118 communicates message 1 S2 including LAN access authorization and a location of an outward~facing RAP Web server (RWS) 114 to RAP setup module 148.
[0045]. Unce the user of the remote client 106 has been authorized for LAN 112 access, wizard 146 sends discover remote applications request 132 to the RAP Web service (RWS) 130. As indicated above, the Internet address/URL of the RWS 130 is identified in the message 1S2 and/or identified in some other manner, such a via a configuration script executed on the remote client. As described above, responsive to receiving the discovery request, 132, the RWS 130 invokes one or mare accessor 134 to interrogate respective data sources ail the LAls1' to identify 1 S appiication(s) 104 associated or otherwise published for user TS access.
The RWS
returns this information to the wizard 146 as aggregated list 136.
[0046] Wizard 146 communicates aggregated list 136 to the RAP client worker 1 S4, which takes newly discovered remote applications and presents them to the user, through shell 1 S6. In one implementation, shortcuts 1 S 8 representing the applications 104 identified in the aggregated list 136 are presented to the user. In this example, each shortcut 1S8 is a hIe that points to a respective application 104 on an installation point of LAN 112. The shortcuts) 1S8 allow a user to conveniently access files stored on the LAN 112 via TSs provided by TS client 160.
[0047] Rap spawner 162 component triggers TS client 160 when the user chooses to start an application 104 associated with a shortcut 158. When the RAP
spawner is used, shell items {respective ones of shortcuts 1S8) are refreshed by shell component 156. For example, when a sub-component for the current environment determines that a remote application 104 has been unpublished or updated, it notifies the RAP client worker 154, and the RAP client worker 154 handles the deletion or update of desktop shortcuts on behalf of the sub-component.
[0048] Fig. 3 shows exemplary component data flow for a remote client computer 106 to discover remote applications 104-1 installed on an office computer 102 in a LAN 112. The remote application discovery is accomplished via a Web service that is accessed via a public network 113 such as the Internet.
For purposes o~ discussion and illustration, the operations of Fig. 3 are described with respect to corresponding components of Fig, 1. In the figures, the left-most digit of a component reference number identifies the particular figure in which the component first appears. For instance, components 122, 130, 134-3, 142, and were first introduced above with respect to Fig. 1. The vertical lines, which infei~seEf respective ones of the components; are used to indicate ieceipt of certain messages and corresponding responses, as now described with respect to data flows 302 - X22, each. of which are illustrated as directional arrows and each of which illustrate destination andlor origination to/from a particular component.
[0049] Directional arrow 302 shows a data flow to the RAP Web service 130. Data flow 302 corresponds to a request for remote application discovery. Remote application discovery request 132 of Fig. 1 is illustrative of such a request. In this example, the request indicates that applications 104-1, which are installed on a remote client computer 104 associated with a specified user, are of significance for discovery. Responsive to this request, and as shown by data flow 304, RAP Web server 130 communicates a respective get applications request 138 to an office computer accessor such as P~ accessor 134-3. In this example, the get applications request does not identify the user's corresponding office computer 102. Thus, the PC aecessor interrogates directory service 122 of LAN 112 for this user specific resource data-this is shown via data flow 306, which is directed to obtaining the network address for the user's computing device 102 via a Domain Name Service (DNS). This Intranet specific resource data is communicated back to the PC accessor 134-3 by the directory service 122 as shown by data flow 308.
(0050) At this point, the RAP Web service 130 has the network address associated with the user's computer device 102. Using this network address, the RAP Web service 130 of the RAP Web server 114 communicates a get applications request to RAP Web service 142-this Web service 142 is executing on the user's office computer 102. As shown by data flow 310, this get application request bypasses directary service 122. The Web service 142, responsive to receiving the request, interfaces with shell accessor I44, which is also executing on the user's office cortiputer 102. This'i~t~rface is represented by data flaw 312. The shell accessor 133 determines if the user or other administrative entity has deployed any applications) 104-1 on the computer 102 that have been marked for remote client Internet discovery and for subsequent TS execution. In one implementation, the shell aceessor is a computer program provided by an operating system. The shell accessar 144 enumerates the applications) 144.1 installed on the user's computing device I02, returning this information through respective .ones of the components, as shown by data flows 314 - 320, eventually reaching the remote computing device 106, as shown by data flow 322.
[0051 ] Fig. 4 shows an exemplary procedure 400 to enumerate and present applications installed for terminal server access on an Intranet to a user of a client computing device 102 that is external to the Intranet. For purposes 'of discussion, the operations of Fig. 4 are described with respect to corresponding components of Fig. 1. At block 402, the remote client computing device 102 sends a remote application discovery request 132 to the RAP Web server 130 of the RAP Web service 114. In one implementation, the request 132 indicates that the user of the remote client device 102 is interested in receiving information corresponding to applications 104 installed on one or more specific installation points across the LAN 112. That is, individual ones and/or types of data sources of interest may be specified in the remote application discovery request.
[0052]. At block 404, the remote client device 102 receives a discovery response 136 from tl~e RAP Web service 130 identifying the installed applications 104 across one or more data sources deployed in a private Intranet.
Such data sources include, for example, user workstations) {e.g., office computer 102) and various installation points that may be accessed via a directory service 122, an SMS server 128, and or any other type of information source deployeii on I;AN 112; . .. . . .
[0053] At block 406, the remote client device 106 presents shortcuts 158 to these installed applications) 1.04 to the user-the shortcuts are generated from infrnmation extracted from the one or more responses 136. The presentation of these discovered remote applications is seannless, meaning that shortcuts to respective ones of the applications) I04 are presented independent of their respective data sources, for instance, on a desktop of the remote computing device 106, via a "start" menu, on a Web page accessed by the user via a browser 104, or in some other user interface. The seamless presentation represents a merged view that is presented to the end-user far all applications for which they have access, where these application may be associated with multiple network identities and may come from multiple different sources.

[0054] The user can select any of the presented shortcuts) 158 to launch an associated application 104, remotely via known terminal services, for instance, via a TS Prpxy (not shown) for receiving HTTP, converting it to a Remote Desktop Protocol (RDP) , or equivalent, and forwarding to an appropriate terminal server (not shown) in LAN 112. Accordingly, when the application 104 executes an the remote installation point, the user experience is virtually identical to the experience had the application been installed locally at the remote client device 106 (e.g., there is full integration of audio, client-side printing devices, the taskbar, and so on}.
[0055] In one implementation, the operations of block 406 are performed via respective interfaces between Wizard 146, RAP client worker 156, shell 156, and/or RAP spawner 162, as akeady described.
Exemnlarv Oneratine Environment . [0056J, Fig. 5 illustrates an example of a suitable computing environment on which the subsequently described systems, apparatuses and methods for a Web service for remote application discovery may be implemented (either fully or partially). Exemplary computing environment 500 is only one example of a suitable computing environment and is not intended to suggest any limitation as to the scope of use or functionality of systems and methods the described herein. Neither should computing environment 500 be interpreted as having any dependency or requirement relating to any one or combination of components illustrated in computing environment 500.
[OOS7] The methods and systems described herein are operational with numerous other genezal purpose or special purpose computing system environments or configurations. Examples of well known computing systems, environments, and/or configurations that may be suitable far use include, but are not limited to, personal computers, server computers, multiprocessor systems, microprocessor-based systerus, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and so on. Compact ox subset versions of the framework may also be implemented in 5 clients of limited resources, such as handheld computers, or , other computing devices. The invention is practiced in a distributed computing environment where tasks are perfanned by remote processing devices that are linked through a communications network. In a d;sLributed computing environment, program modulos mad be Located in both local and xemote Memory storage devices..
10 [0058] With reference to Fig. 5, an exemplary system for remote application discovery includes a general purpose computing device in the form of a computer 510. The following. described aspects of computer 510 are exemplary aspects of the office computer 102 of Fig. 2, the RAP Web server 114 of Fig. 2, and/or the remote e~~t. ~u~;~:iie 106 of Fig: 2. . . .~ ~~ .off y s; ~~~_ of coin~iutgi . .: .
15 510 may include; but are not limited to, a processing unit 520, a system memory 530, and a system bus 521 that couples various system components includixlg the system mernery to the processing unit 520. Z'he system bus 521 may be any of several types of bus structures including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
By way 20 of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA
(EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus.
[0059] A computer 510 typically includes a variety of computer readable media. Computer readable media can be any available media that can be accessed by computer 510 and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer readable media may comprise computer storage media and communication media. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of infoxtnation such as S computer readable instructions, data structures, program modules ar other data.
Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, ziiagnetic disk storage oz other magnetic storage devices, or any other. medium which can: be used to store the desired information and which can be accessed by computer 510.
[0060) Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave ar other transport meehagisni and includes any i~~atioti delivery riiedia. .1"he term "ihoduiat~d data s)gna:l" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media.
Combinations of the any of the above should also be included within the scope of computer readable media.
[0061) System memory 530 includes computer storage media in the form of volatile and/or nonvolatile memory such as read only memory (ROM) S31 and random access memory (RAM) 532. A basin input/output system 533 (BIOS), containing the basic routines that help to transfer information between elements within computer 510, such as during start-up, is typically stored in ROM 531.
RAM 532 typically contains data and/or program modules that are immediately accessible to and/or presently being operated on by processing unit 520. By way of example, and not limitation, Fig. S illustrates operating system 534, application programs 535, other program modules 536, and program data 537.
[0062] The computer 510 may also include other zemovablelnon-removable, volatilelnonvolatile computer storage media. By way of example only, Fig. 5 illustrates a hard disk drive 541 that reads from or writes to non-removable, nonvolatile magnetic media, a magnetic disk drive 551 that reads from or writes to a removable, nonvolatile magnetic disk SS2, and an optical disk drive SSS that reads from or writes to a removable, nonvolatile optical disk 556 such as a CD ROM
or other optical media. Other removablelnon-removable, valatile/nonvolatile computer storage media That can be used in the exemplary operating environment include, but are not limited to, magnetic tape cassettes, flash memory cards, digital versatile disks, digital video tape, solid state RAM, solid state ROM, and the like.
.hhe. ~,d ~ ~~.e 541 is' typically co3uiected-to the s~istain bus 521 tltiougti a -nori-removable memory interface such as interface 540, and magnetic disk drive 551 and optical disk drive 555 are typically connected to the system bus 521 by a removable memory interface, such as interface 550.
[0063] The drives and their associated computer storage media discussed above and illustrated in Fig. 5, provide storage of computer readable instructions, data structures, program modules and other data for the computer 510. In Fig.
5, for example, hard disk drive 541 is illustrated as storing operating system 544, application programs 545, other program modules 546, and program data 547.
Note that these components can either be the same as or different from operating system 534, application programs 535, other program modules 536, and program data 537.
Operating system 544, applicadon'programs 545, other program modules 546, and program data 547 are given different numbers here to illustrate that they are at least different copies.
[0064] A user may enter commands and information into the computer 510 through input devices such as a keyboard 562 and pointing device 561, commonly referred to as a mouse, trackball or touch pad. Other input devices (not shown) may include a microphone, joystick, game pad, satellite dish, scanner, or the like. These and other input devices are often connected to the processing unit 520 through a user input interface 560 that is coupled. to the system bus 521, but may be connected by other interface and bus structures, such as a parallel port, game port or a universal serial bus (L1SB).
[0065] A monitor 591 or other type of display device is also connected to the system bus 521 via an interface, such as a video interface 590. In addition to the monitor, computers may also include other - peripheral output devices such as .. . ~$p~~~ X97 aiid; ~iriritei 596, w~liicli. triay be coiiiiected~~ough ari output peripheral interface 595.
[Q066] The computer 510 operates in a networked environment using logical connecfions to one or more remote computers, such as a remote computer 580.
The .
remote computer 580 may be a personal computer, a server, a router, a network PC, a peer device or other common network node, and typically includes many or all of the elements described above relative to the computer 510, although only a memory storage device 581 has been illustrated in Fig. 5. The logical connections depicted in Fig. 5 include a local area network (LA.N) 571 and a wide area network (WAIF
573, but may also include other networks. Such networking environments ire commonplace in offices, enterprise-wide computer networks, intranets and the Internet.

[006'7] When used in a LAN networking environment, the computer 510 is connected to the LAN 571 through a network interface or adapter 570. When used in a WAN networking environment, the computer 310 typically includes a modem 572 or other means for establishing communications over the WAN 573, such as the Internet. The modem 572, which rriay be internal or external, may be connected to the system bus 521 via the, user input interface 56U, or other appropriate mechanism. In a networked environment, program modules depicted relative to the computer 510, or portions thereof, may be stored in the remote memory storage device. By way of exaW plc, and not titnitatiori, Fig. 5 illustrates remote application programs 585 as residing on memory device 581. The network connections shown are exemplary and other means of establishing a communications link between the computers may be used.
. .. . . :Q
C~_ ,!_us~ ... .. . . .
[0068] Although the invention has been described in language specific to structural features and/or methodological operations or actions, it is to be understood that the invention defined in the appended claims is not necessarily limited to the specific features or actions described. Rather, the specific features and actions are disclosed as preferred forms of implementing the claimed invention.

Claims (20)

1. ~A method for presenting a merged view of remotely installed applications to which a user has terminal server (TS) based access, the method comprising:
generating, by a client computing device, one or more shortcuts to one or more respective applications, each of the applications being installed at one or more installation points in an Intranet, the client computing device being external to the Intranet; and wherein the one or more shortcuts are aggregated to present a merged view of the applications, the merged view being transparent of whether the applications are managed by different information sources on the Intranet and/or configured for remote TS-based execution by different ones of one or more installation points.
2. ~A method as recite in claim 1, wherein the one or more information sources comprise a directory service, a Systems Management Servers and/or a personal office computer associated with the user.
3. ~A method as recite in claim 1, wherein the one or more installation points comprise one or more servers and/or office computers associated with the user.
4. ~A method as recite in claim l, wherein the shortcuts are presented in a desktop of the user.
5. A method as recite in claim 1, wherein the shortcuts are presented in an Internet browser window associated with a Web service providing remote application discovery, the Web service being deployed on a Web server in the Intranet and accessible by the client computing device over a public network.
6. A computer-readable medium comprising computer-executable instructions for presenting a merged view of remotely installed applications to which a user has terminal server (TS) based access, the computer-executable instructions comprising instructions for:
generating, by a client computing device, one or more shortcuts to one or more respective applications, each of the applications being installed at one or more installation points in an Intranet, the client computing device being external to the Intranet; and wherein the one or more shortcuts are aggregated to present a merged view of the applications, the merged view being transparent of whether the applications are managed by different information sources on the Intranet and/or configured for remote TS-based execution by different ones of one or mare installation points.
7. A computer-readable medium as recite in claim 6, wherein the one or more information sources comprise a directory service, a Systems Management Server, and/or a personal office computer associated with the user.
8. A computer-readable medium as recite in claim 6, wherein the one or more installation points comprise one or more servers and/or office computers associated with the user.
9. A computer-readable medium as recite in claim 6, wherein the shortcuts are presented in a desktop of the user.
10. A computer-readable medium as recite in claim 6, wherein the shortcuts are presented in an Internet browser window associated with a Web service providing remote application discovery, the Web service being deployed on a Web server in the Intranet and accessible by the client computing device over a public network,
11. A remote client device comprising:
a processor; and a memory coupled to the processor, the memory comprising computer-program instructions executable by the processor for presenting a merged view of remotely installed applications to which a user has terminal server (TS) based access; the computer-executable instructions comprising instructions for:
generating one or more shortcuts to one or more respective applications, each of the applications being installed at one or more installation points in an Intranet, the remote client device being external to the Intranet; and wherein the one or more shortcuts are aggregated to present a merged view of the applications, the merged view being transparent of whether the applications are managed by different information sources on the Intranet and/or configured for remote TS-based execution by different ones of one or more installation points.
12. A remote client device as recite in claim 11, wherein the one or more information sources comprise a directory service, a Systems Management Server, and/or a personal office computer associated with the user.
13. A remote client device as recite in claim 11, wherein the one or more installation points comprise one or more servers and/or office computers associated with the user.
14. A remote client device as recite in claim 11, wherein the shortcut are presented in a desktop of the user.
15. A remote client device as recite in claim 11, wherein the shortcuts are presented in an Internet browser window associated with a Web service providing remote application discovery, the Web service being deployed on a Web server in the Intranet and accessible by the remote client device over a public network.
16. A remote client device for presenting a merged view of remotely installed applications to which a user has terminal server (TS) based access, the remote client device comprising:
means for generating one or more shortcuts to one or more respective applications, each of the applications being installed at one or more installation points in an Intranet, the remote client device being external to the Intranet; and wherein the one or more shortcuts are aggregated to present a merged view of the applications, the merged view being transparent of whether the applications are managed by different information sources on the Intranet and/or configured for remote TS-based execution by different ones of one or more installation points.
17. A remote client device as recite in claim 16, wherein the one or more information sources comprise a directory service, a Systems Management Server, and/or a personal office computer associated with the user.
18. A remote client device as recite in claim 16, wherein the one ar more installation points comprise one or more servers and/or office computers associated with the user.
19. A remote client device as recite in claim 16, wherein the shortcuts are presented in a desktop of the user.
20. A remote client device as recite in claim 16, wherein the shortcuts are presented in an Internet browser window associated with a Web service providing remote application discovery, the Web service being deployed on a Web server in the Intranet and accessible by the remote client device over a public network.
CA002501658A 2003-11-24 2004-07-23 Presenting a merged view of remote application shortcuts from multiple providers Abandoned CA2501658A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/722,182 US7590713B2 (en) 2003-11-24 2003-11-24 Presenting a merged view of remote application shortcuts from multiple providers
US10/722,182 2003-11-24
PCT/US2004/023960 WO2005057325A2 (en) 2003-11-24 2004-07-23 Presenting a merged view of remote application shortcuts from multiple providers

Publications (1)

Publication Number Publication Date
CA2501658A1 true CA2501658A1 (en) 2005-05-24

Family

ID=34619943

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002501658A Abandoned CA2501658A1 (en) 2003-11-24 2004-07-23 Presenting a merged view of remote application shortcuts from multiple providers

Country Status (10)

Country Link
US (1) US7590713B2 (en)
EP (1) EP1716466B1 (en)
JP (1) JP4550067B2 (en)
KR (1) KR20060111360A (en)
CN (1) CN100498758C (en)
BR (1) BRPI0406414A (en)
CA (1) CA2501658A1 (en)
MX (1) MXPA05006644A (en)
RU (1) RU2367009C2 (en)
WO (1) WO2005057325A2 (en)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070233804A1 (en) * 2006-03-31 2007-10-04 Microsoft Corporation Providing remote application access in accordance with decentralized configuration information
US8775704B2 (en) 2006-04-05 2014-07-08 Nvidia Corporation Method and system for communication between a secondary processor and an auxiliary display subsystem of a notebook
US9195428B2 (en) 2006-04-05 2015-11-24 Nvidia Corporation Method and system for displaying data from auxiliary display subsystem of a notebook on a main display of the notebook
CN101174855B (en) * 2006-11-01 2012-06-20 华为技术有限公司 Spectrum management method and apparatus
US8201218B2 (en) * 2007-02-28 2012-06-12 Microsoft Corporation Strategies for securely applying connection policies via a gateway
US7752285B2 (en) * 2007-09-17 2010-07-06 Yahoo! Inc. Shortcut sets for controlled environments
US8683062B2 (en) * 2008-02-28 2014-03-25 Microsoft Corporation Centralized publishing of network resources
US8161160B2 (en) * 2008-02-28 2012-04-17 Microsoft Corporation XML-based web feed for web access of remote resources
US7991734B2 (en) 2008-03-07 2011-08-02 Microsoft Corporation Remote pointing
US8612862B2 (en) * 2008-06-27 2013-12-17 Microsoft Corporation Integrated client for access to remote resources
US8736617B2 (en) 2008-08-04 2014-05-27 Nvidia Corporation Hybrid graphic display
US8671178B2 (en) 2009-06-30 2014-03-11 Telefonaktiebolaget L M Ericsson (Publ) Information processing system and method providing a remote access
US9111325B2 (en) 2009-12-31 2015-08-18 Nvidia Corporation Shared buffer techniques for heterogeneous hybrid graphics
US8780122B2 (en) 2009-09-16 2014-07-15 Nvidia Corporation Techniques for transferring graphics data from system memory to a discrete GPU
US8370510B2 (en) * 2009-12-18 2013-02-05 Microsoft Corporation Remote application presentation over a public network connection
US8434135B2 (en) * 2010-06-11 2013-04-30 Microsoft Corporation Creating and launching a web application with credentials
CN102143128B (en) * 2010-06-30 2014-05-07 华为技术有限公司 Method, device and system for updating desktop shortcut of mobile terminal
CN102739708B (en) * 2011-04-07 2015-02-04 腾讯科技(深圳)有限公司 System and method for accessing third party application based on cloud platform
US20150334184A1 (en) * 2011-12-22 2015-11-19 Hew-Lett-Pack Development Company, L.P. Enabling execution of remotely-hosted applications using application metadata and client updates
US8856295B2 (en) * 2012-01-10 2014-10-07 Oracle International Corporation System and method for providing an enterprise deployment topology with thick client functionality
JP5980037B2 (en) * 2012-08-06 2016-08-31 キヤノン株式会社 Management system, server, client, and method thereof
US9455876B1 (en) * 2013-02-01 2016-09-27 Ingram Micro Inc. Method and standard for integrating applications into a cloud
CN103309952A (en) * 2013-05-18 2013-09-18 冯俊 Virtual file building and transforming method and system
US9575773B2 (en) 2013-10-23 2017-02-21 Vmware, Inc. Monitoring multiple remote desktops on a wireless device
KR101992978B1 (en) 2017-07-26 2019-06-25 한전케이디엔 주식회사 Application remote test device using data distribution service

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0626635B1 (en) * 1993-05-24 2003-03-05 Sun Microsystems, Inc. Improved graphical user interface with method for interfacing to remote devices
US6901433B2 (en) * 1995-06-07 2005-05-31 Microsoft Corporation System for providing users with a filtered view of interactive network directory obtains from remote properties cache that provided by an on-line service
US6088515A (en) 1995-11-13 2000-07-11 Citrix Systems Inc Method and apparatus for making a hypermedium interactive
US5838910A (en) * 1996-03-14 1998-11-17 Domenikos; Steven D. Systems and methods for executing application programs from a memory device linked to a server at an internet site
US5903905A (en) * 1996-04-30 1999-05-11 Microsoft Corporation Method for simultaneously constructing and displaying a dynamic preview of a document that provides an accurate customized document
US5845081A (en) * 1996-09-03 1998-12-01 Sun Microsystems, Inc. Using objects to discover network information about a remote network having a different network protocol
US5845267A (en) 1996-09-06 1998-12-01 At&T Corp System and method for billing for transactions conducted over the internet from within an intranet
RU2193823C2 (en) 1996-11-18 2002-11-27 ЭмСиАй ВОРЛДКОМ, ИНК. Communication system architecture
RU2204166C2 (en) 1997-06-16 2003-05-10 Свисском Мобиле Аг Integrated-circuit card and method for data exchange between peripheral device and integrated-circuit card
US6131120A (en) * 1997-10-24 2000-10-10 Directory Logic, Inc. Enterprise network management directory containing network addresses of users and devices providing access lists to routers and servers
US6247052B1 (en) * 1997-12-23 2001-06-12 Alcatel Usa Sourcing, L.P. Graphic user interface system for a telecommunications switch management system
RU2220453C2 (en) 1998-05-27 2003-12-27 Дайболд, Инкорпорейтед Device incorporating automatic teller machine (alternatives) and process for generating financial operations message and associated file
US6279001B1 (en) * 1998-05-29 2001-08-21 Webspective Software, Inc. Web service
US6182136B1 (en) * 1998-09-08 2001-01-30 Hewlett-Packard Company Automated service elements discovery using core service specific discovery templates
US6836885B1 (en) * 1998-09-21 2004-12-28 Wyse Technology Inc. Method and apparatus for display of windowing application programs on a terminal
US6760748B1 (en) * 1999-01-20 2004-07-06 Accenture Llp Instructional system grouping student terminals
US6263363B1 (en) * 1999-01-28 2001-07-17 Skydesk, Inc. System and method for creating an internet-accessible working replica of a home computer on a host server controllable by a user operating a remote access client computer
US6081900A (en) * 1999-03-16 2000-06-27 Novell, Inc. Secure intranet access
US6356933B2 (en) 1999-09-07 2002-03-12 Citrix Systems, Inc. Methods and apparatus for efficiently transmitting interactive application data between a client and a server using markup language
US7424543B2 (en) * 1999-09-08 2008-09-09 Rice Iii James L System and method of permissive data flow and application transfer
US20010047385A1 (en) 1999-12-30 2001-11-29 Jeffrey Tuatini Passthru to shared service funtionality
US6654784B1 (en) * 2000-01-14 2003-11-25 Nexaweb Technologies, Inc Computing architecture
US7155455B2 (en) 2000-03-24 2006-12-26 Inner Circle Logistics, Inc. Method and system for business information networks
US6968500B2 (en) * 2000-04-05 2005-11-22 Dmitry Mikhailov Automatic forms handling system
US6785713B1 (en) * 2000-05-08 2004-08-31 Citrix Systems, Inc. Method and apparatus for communicating among a network of servers utilizing a transport mechanism
US6970869B1 (en) * 2000-05-09 2005-11-29 Sun Microsystems, Inc. Method and apparatus to discover services and negotiate capabilities
US6898618B1 (en) * 2000-05-09 2005-05-24 Sun Microsystems, Inc. Client-specified display services in a distributed computing environment
US7496637B2 (en) * 2000-05-31 2009-02-24 Oracle International Corp. Web service syndication system
CN1300677C (en) * 2000-06-22 2007-02-14 微软公司 Distributed computing services platform
US20020054090A1 (en) * 2000-09-01 2002-05-09 Silva Juliana Freire Method and apparatus for creating and providing personalized access to web content and services from terminals having diverse capabilities
AU2002212968A1 (en) * 2000-09-12 2002-03-26 Viaken Systems, Inc. Techniques for providing and obtaining research and development information technology on remote computing resources
US20030018725A1 (en) * 2000-10-20 2003-01-23 Tod Turner System and method for using an instant messaging environment to establish a hosted application sharing session
FI113898B (en) * 2000-11-21 2004-06-30 Nokia Corp Process for producing content in a wireless communication device
US7072936B2 (en) * 2000-12-13 2006-07-04 Riskspan, Inc. System and method for aggregating data having data and application dependencies
US20020116454A1 (en) * 2000-12-21 2002-08-22 William Dyla System and method for providing communication among legacy systems using web objects for legacy functions
US20030009385A1 (en) * 2000-12-26 2003-01-09 Tucciarone Joel D. Electronic messaging system and method thereof
US20030014476A1 (en) * 2001-01-03 2003-01-16 Peterson David Allen Thin client computer operating system
FI110377B (en) * 2001-01-12 2002-12-31 Sonera Oyj Procedure and system for maintenance of configuration data
US6999912B2 (en) * 2001-03-13 2006-02-14 Microsoft Corporation Provisioning computing services via an on-line networked computing environment
US7047177B1 (en) * 2001-03-21 2006-05-16 Unisys Corporation Thin client sizing tool for enterprise server farm solution configurator
US7461369B2 (en) * 2001-03-30 2008-12-02 Bmc Software, Inc. Java application response time analyzer
US6836786B1 (en) * 2001-04-30 2004-12-28 Microsoft Corporation Method and apparatus for terminal server addressability via URL specification
US7082464B2 (en) * 2001-07-06 2006-07-25 Juniper Networks, Inc. Network management system
US7117504B2 (en) 2001-07-10 2006-10-03 Microsoft Corporation Application program interface that enables communication for a network software platform
WO2003058476A1 (en) * 2001-09-28 2003-07-17 Infocus Corporation Network projector interface system
US20030065943A1 (en) * 2001-09-28 2003-04-03 Christoph Geis Method and apparatus for recognizing and reacting to denial of service attacks on a computerized network
US7831655B2 (en) 2001-10-18 2010-11-09 Bea Systems, Inc. System and method for implementing a service adapter
US7603469B2 (en) * 2002-01-15 2009-10-13 International Business Machines Corporation Provisioning aggregated services in a distributed computing environment
US7139551B2 (en) 2002-01-19 2006-11-21 Sasken Communication Technologies Ltd. System and method for automatically downloading software applications to a remote terminal
US20030149728A1 (en) 2002-02-05 2003-08-07 Bandu Wewalaarachchi Remote application publication and communication system
US8135843B2 (en) * 2002-03-22 2012-03-13 Citrix Systems, Inc. Methods and systems for providing access to an application
US7010782B2 (en) * 2002-04-04 2006-03-07 Sapphire Infotech, Inc. Interactive automatic-test GUI for testing devices and equipment using shell-level, CLI, and SNMP commands
US7191217B2 (en) 2002-04-10 2007-03-13 Nippon Telegraph And Telephone Corporation Distributed server-based collaborative computing
US7363363B2 (en) * 2002-05-17 2008-04-22 Xds, Inc. System and method for provisioning universal stateless digital and computing services
US7240109B2 (en) * 2002-06-27 2007-07-03 Sun Microsystems, Inc. Remote services system service module interface
US7210143B2 (en) 2002-07-17 2007-04-24 International Business Machines Corporation Deployment of applications in a multitier compute infrastructure
US7254786B2 (en) * 2002-11-05 2007-08-07 Microsoft Corporation System for transmitting and displaying icon resources group associated with remote application to a local computing system to facilitate virtualization of the remote application
GB2395638B (en) * 2002-11-20 2005-11-09 Fujitsu Serv Ltd Multiple network access
US20040177073A1 (en) * 2003-01-17 2004-09-09 Harry Snyder Executable application access management system
US20040255289A1 (en) * 2003-06-11 2004-12-16 Citycites.Com Corp. Remote access software solution for rapidly deploying a desktop
US7296022B2 (en) * 2003-07-14 2007-11-13 Microsoft Corporation Method and system for accessing a network database as a web service
US20050102173A1 (en) * 2003-07-18 2005-05-12 Barker Lauren N. Method and system for managing regulatory information
US7577743B2 (en) * 2003-08-01 2009-08-18 Sentillion, Inc. Methods and apparatus for performing context management in a networked environment
US7716357B2 (en) 2003-10-24 2010-05-11 Microsoft Corporation Service discovery and publication
US7146420B2 (en) 2003-11-20 2006-12-05 Square D Company Internet listener/publisher
US7475125B2 (en) * 2003-11-24 2009-01-06 Microsoft Corporation Seamless discovery of workstation-installed remote applications from an extranet
US7720906B2 (en) * 2003-11-24 2010-05-18 Microsoft Corporation Web service for remote application discovery

Also Published As

Publication number Publication date
US20050125530A1 (en) 2005-06-09
RU2005115570A (en) 2006-01-20
WO2005057325A3 (en) 2006-12-21
EP1716466A4 (en) 2011-05-11
KR20060111360A (en) 2006-10-27
JP2007512618A (en) 2007-05-17
BRPI0406414A (en) 2005-10-04
RU2367009C2 (en) 2009-09-10
CN1969271A (en) 2007-05-23
CN100498758C (en) 2009-06-10
EP1716466B1 (en) 2014-05-14
EP1716466A2 (en) 2006-11-02
US7590713B2 (en) 2009-09-15
MXPA05006644A (en) 2005-10-21
JP4550067B2 (en) 2010-09-22
WO2005057325A2 (en) 2005-06-23

Similar Documents

Publication Publication Date Title
EP1716495B1 (en) Seamless discovery of workstation-installed remote applications from the extranet
EP1642197B1 (en) A web service for remote application discovery
CA2501658A1 (en) Presenting a merged view of remote application shortcuts from multiple providers
AU2004279168A2 (en) A web service for remote application discovery
US7903656B2 (en) Method and system for message routing based on privacy policies
US7069318B2 (en) Content tracking in transient network communities
US7181536B2 (en) Interminable peer relationships in transient communities
EP1491026B1 (en) Dynamic addressing in transient networks
US7620723B2 (en) Network management
WO2002017139A1 (en) Method and system for providing content providers with information about how their users access the internet
AU2004279175A1 (en) Presenting a merged view of remote application shortcuts from multiple providers
Kluckner Fachhochschule Vorarlberg GmbH
Nguyen Mobile Home Access: with Tunneling Support
Kubher Home area networking with OSGi

Legal Events

Date Code Title Description
FZDE Discontinued