Claims
- 1. A method for enhancing the operable functionality of an existing target software application with a complex technological add-in, the method comprising the steps of:
mapping a library function containing a surrogate procedure to at least one of a plurality of application programs executing in a computer system, said at least one application program including the existing target software application; upon command from an injection software application program, selectively causing only said library function mapped to the existing target software application to replace a first pointer in memory to a target procedure for the existing target software application with a second pointer to said surrogate procedure, so that said surrogate procedure receives intercepted messages that would otherwise be received by said target procedure; processing said intercepted messages in said surrogate procedure to modify an operating feature of said target application program; and, calling an emulation procedure separate from and external to said surrogate procedure to assist said surrogate procedure in processing said intercepted messages by performing complex processing to enhance the operable functionality of the existing target software application.
- 2. The method of claim 1, further comprising the step of calling said emulation procedure by means of an application programming interface routine which has a return value, and further wherein said return value determines said processing to be performed by said surrogate procedure.
- 3. The method of claim 1 further comprising the step of
processing in said surrogate window procedure, each of said intercepted messages, to determine if said intercepted message requires post-processing by said surrogate procedure after any processing by said target procedure and said emulation procedure has been completed, in order to modify said operating feature of said target application program.
- 4. The method of claim 3, further comprising the step of:
retrieving from said target procedure to said surrogate procedure, graphical user interface specification data for a graphical user interface of said target application program, when said message is a request from said operating system for information which will determine the appearance of the target application graphical user interface.
- 5. The method of claim 4, wherein said graphical user interface specification data is edited by said surrogate window procedure to create a modified portion of said target application graphical user interface.
- 6. The method of claim 1 wherein said modified feature modifies the operation of the target application program without modifying the screen displays of said target application program.
- 7. The method of claim 1 wherein said modified feature modifies the screen displays that are seen by the user during operation of the target application program.
- 8. A machine readable storage having stored thereon a computer program for enhancing the operable functionality of an existing target software application with a complex technological add-in, the computer program comprising a routine set of instruction for causing the machine to perform the steps of:
mapping a library function containing a surrogate procedure to at least one of a plurality of application programs executing in a computer system, said at least one application program including the existing target software application; upon command from an injection software application program, selectively causing only said library function mapped to the existing target software application to replace a first pointer in memory to a target procedure for the existing target software application with a second pointer to said surrogate procedure, so that said surrogate procedure receives intercepted messages that would otherwise be received by said target procedure; processing said intercepted messages in said surrogate procedure to modify an operating feature of said target application program; and, calling an emulation procedure separate from and external to said surrogate procedure to assist said surrogate procedure in processing said intercepted messages by performing complex processing to enhance the operable functionality of the existing target software application.
- 9. The machine readable storage of claim 8, further comprising the step of calling said emulation procedure by means of an application programming interface routine which has a return value, and further wherein said return value determines said processing to be performed by said surrogate procedure.
- 10. The machine readable storage of claim 8, further comprising the step of
processing in said surrogate window procedure, each of said intercepted messages, to determine if said intercepted message requires post-processing by said surrogate procedure after any processing by said target procedure and said emulation procedure has been completed, in order to modify said operating feature of said target application program.
- 11. The machine readable storage of claim 10, further comprising the step of:
retrieving from said target procedure to said surrogate procedure, graphical user interface specification data for a graphical user interface of said target application program, when said message is a request from said operating system for information which will determine the appearance of the target application graphical user interface.
- 12. The machine readable storage of claim 11, wherein said graphical user interface specification data is edited by said surrogate window procedure to create a modified portion of said target application graphical user interface.
- 13. The machine readable storage of claim 8, wherein said modified feature modifies the operation of the target application program without modifying the screen displays of said target application program.
- 14. The machine readable storage of claim 8, wherein said modified feature modifies the screen displays that are seen by the user during operation of the target application program.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a divisional of U.S. patent application Ser. No. 08/747,040 which was filed in the United States Patent and Trademark Office on Nov. 8, 1996.
Divisions (1)
|
Number |
Date |
Country |
Parent |
08747040 |
Nov 1996 |
US |
Child |
10411429 |
Apr 2003 |
US |