摘要:
A remote procedure call marshaling architecture provides remote procedure call interoperability between computers having arbitrary native data format pointer sizes not conforming to an on-wire multicanonical data representation of the remote procedure calls. The architecture includes an interface description language compiler having a code path generic to effecting marshaling of data structures containing non-conformant pointers. When compiled to run on a computing platform having a native, non-conformant pointer size, the code path is automatically configured to effect marshaling of data structure containing pointers of the computing platform's native pointer size.
摘要:
A method and system for transparently executing code using a surrogate process is provided. In a preferred embodiment, the underlying system provides a surrogate program that can execute server dynamic-link libraries. When a client program wishes to access an object of a sharable class or a class factory object, the client program requests a service control manager to execute the server code for the sharable class. In response, the service control manager determines from a registration database whether the server code is available in the form of a server executable or a server dynamic-link library. If the server code is implemented as a server dynamic-link library, the service control manager either returns the location of the server dynamic-link library to the client program to be run in the execution context of the client program or the service control manager launches the surrogate program and requests it to load the server dynamic-link library, thereby isolating the server dynamic-link library from the client program execution context. When the surrogate process is launched, the surrogate process loads the requested server dynamic-link library and instantiates class factory objects corresponding to the sharable classes implemented by the server dynamic-link library. In one embodiment, multiple server dynamic-link libraries can be loaded within the same surrogate process. According to this embodiment, when the client program requests access to an object of a sharable class or to a class factory object, the service control manager determines whether the server code that implements the object can be loaded in a surrogate process that is already executing or whether a new surrogate process needs to be launched. Once the server dynamic-link library is loaded in the surrogate process and a reference to a server object returned to the client program, the client program can communicate with the server code in the same manner as if the server code had been loaded into the execution context of the client program.
摘要:
An in-page embeddable platform provides media selection (for inclusion in a playlist or interactive feature) and playlist editing capabilities that may be accessed by a user from a 3rd party web page. The platform allows a web site administrator to present an interactive playlist feature on a web site in manner that is integrated with the characteristics of the web page. Visitors to the web site may customize the playlist dynamically, without leaving the web site. An in-page user interface allows users to select new media, or to re-order or remove media from the playlist directly from the web page. The playlist may be edited or contributed to by any number of users, enabling collaborative media selection. The media-selection capability may be used directly in the context of selecting songs to add to a playlist, or it may be used in a standalone fashion.
摘要:
An architecture is provided that enables an accessibility aid to directly access and manipulate user interface elements of an application program programmatically. Moreover, such access and manipulation occurs in an application-independent manner, so that an accessibility aid utilizing the architecture can access any application program that conforms to the architecture, without the accessibility aid needing any prior knowledge of the application program or its user interface elements. User interface elements typically have both a visual representation displayed on the video display and an implementation, which is the code and data implementing the user interface element. The architecture provides an accessibility aid with direct access to the implementation of user interface elements, thus enabling the accessibility aid to both examine various characteristics of the user interface element and manipulate these characteristics, which may affect its visual representation.