IP Library › Granted Patent US 6,874,139
Granted Patent B2
US 6,874,139 · App. 09/855,425 · Granted Mar 29, 2005

Method and system for seamless integration of preprocessing and postprocessing functions with an existing application program

Assignee: Interfuse Technology Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,874,139
App. No.
09/855,425
Granted
Mar 29, 2005
Kind
B2
Abstract

A method for associating file activity of an application with the graphical display of the file on a screen comprises loading by an operating system an executable code of a message monitoring program adapted to monitoring a message sent by an operating system to a document display window. The message monitoring program establishes a system-wide window hook using available operating system API functions associated with one or more functions in a library of the message monitoring program. The message monitoring program library is loaded into the memory space of a newly started application program, the import table of the application is fixed with addresses of functions from the message monitoring program library, and the application's main window function is substituted with a message monitoring program window function.

Claims (68)

1. A method for associating file activity of an application with the graphical display of the file on a screen comprising the steps of:

loading by an operating system an executable code of a message monitoring program adapted to monitoring a message sent by an operating system to a document display window;

establishing by the message monitoring program a system-wide window hook using available operating system API functions, said system-wide window hook associated with one or more functions in a library of said message monitoring program;

loading the message monitoring program library into the memory space of an application program, said application having been newly started and having an import table and a newly created window;

fixing the import table of the application with addresses of functions from the message monitoring program library; and

substituting the application's main window function with a message monitoring program window function;

Wherein said method further comprising, upon receipt of a document window destroy message by a document's notify window, checking for the existence of a child notify window associated with a file that was opened in association with said document, and acting upon said associated file before destroying said document window,

wherein an action includes deleting a temporary file from a mass storage device, wherein the deletion includes the steps of wiping the device sectors of the data contained therein, and renaming the temporary file to a name consisting of one letter prior to deletion.

2. The method of claim 1 , further comprising creating a key window when an application is started, said key window adapted to receive a message when a file is opened and closed.

3. The method of claim 2 , further comprising:

sending a message to the key window when a file is opened;

creating a child notify window associated with said file; and

creating a notify window as a child window of a document window associated with said file.

4. The method of claim 1 , further comprising:

creating a notify window when a document window is created, wherein the notify window is a child window of the document window; and

receiving by the notify window a message from the operating system when the parent document window is activated by either the application program or by action of a user.

5. The method of claim 1 , comprising a user of an application specifying one or more rules to the application, each said rule indicating an action to be taken on said associated file before destroying said document window.

6. The method of claim 5 , wherein an action includes encrypting said associated file, wherein encrypting comprises:

creating a new file containing a template of the same format as said associated file, said new file including a header, wherein said header is not encrypted;

copying to the new file a document summary in readable form;

copying to the new file visual indicia representing that the file is encrypted;

copying encrypted data from the associated file to the new file as a named stream, said encrypted data having a beginning and a length; and

writing a code to a substitute stream to prevent the new file from being written over by a user.

7. The method of claim 6 , further comprising the step of including in the header a flag indicative of the type of encryption used on the associated file.

8. The method of claim 6 , further comprising the step of including in the header a flag indicative of a handling procedure to be performed on said encrypted file.

9. The method of claim 6 , further comprising the step of loading data from the encrypted file into a memory block containing other random data, said memory block having a beginning, wherein an offset from the beginning of the memory block of the data from the encrypted file changes each time the message monitoring program executable code is loaded.

10. The method of claim 6 , further comprising the step of including in the header a flag indicative of the length of the encrypted data, and a flag that allows the message monitoring program to search for the beginning of the encrypted data.

11. The method of claim 5 , wherein an action includes compressing said associated file.

12. The method of claim 5 , wherein an action includes translating said associated file into another language.

13. The method of claim 5 , wherein an action includes converting said associated file into another file format.

14. The method of claim 5 , wherein an action includes searching for a virus in said associated file.

15. The method of claim 5 , wherein an action includes altering text in said associated file.

16. The method of claim 5 , wherein an action includes changing or adding an optional setting to said associated file.

17. The method of claim 5 , wherein an action includes spell checking said associated file.

18. The method of claim 5 , wherein an action includes creating a backup of said associated file.

19. The method of claim 5 , wherein an action includes versioning said associated file under a different name or stream each time said associated file is saved.

20. The method of claim 5 , wherein an action includes storing said associated file content in a remote location, and storing a reference of said associated file locally.

21. The method of claim 5 , wherein an action includes grammar checking said associated file.

22. The method of claim 1 , further comprising monitoring by the message monitoring program window function the creation of a document child window.

23. A method for associating file activity of an application with the graphical display of the file on a screen comprising the steps of:

loading by an operating system an executable code of a message monitoring program adapted to monitoring a message sent by an operating system to a document display window;

establishing by the messaae monitoring program a system-wide window hook using available operating system API functions, said system-wide window hook associated with one or more functions in a library of said message monitoring program;

loading the message monitoring program library into the memory space of an application program, said application having been newly started and having an import table and a newly created window;

fixing the import table of the application with addresses of functions from the message monitoring program library; and

substituting the application's main window function with a message monitoring program window function;

wherein said method further comprising, upon receipt of a document window destroy message by a document's notify window, checking for the existence of a child notify window associated with a file that was opened in association with said document, and acting upon said associated file before destroying said document window,

wherein an action includes deleting a temporary file from a mass storage device, wherein the deletion includes the steps of wiping the device sectors of the data contained therein, and renaming the temporary file to a name consisting of one letter prior to deletion,

wherein the wiping is performed in conformance with the standards set for in the United States National Industrial Security Program Operating Manual.

24. The method of claim 23 , further comprising creating a key window when an application is started, said key window adapted to receive a message when a file is opened and closed.

25. The method of claim 24 , further comprising:

sending a message to the key window when a file is opened;

creating a child notify window associated with said file; and

creating a notify window as a child window of a document window associated with said file.

26. The method of claim 23 , further comprising:

creating a notify window when a document window is created, wherein the notify window is a child window of the document window; and

receiving by the notify window a message from the operating system when the parent document window is activated by either the application program or by action of a user.

27. The method of claim 23 , comprising a user of an application specifying one or more rules to the application, each said rule indicating an action to be taken on said associated file before destroying said document window.

28. The method of claim 27 , wherein an action includes encrypting said associated file, wherein encrypting comprises:

creating a new file containing a template of the same format as said associated file, said new file including a header, wherein said header is not encrypted;

copying to the new file a document summary in readable form;

copying to the new file visual indicia representing that the file is encrypted;

copying encrypted data from the associated file to the new file as a named stream, said encrypted data having a beginning and a length; and

writing a code to a substitute stream to prevent the new file from being written over by a user.

29. The method of claim 28 , further comprising the step of including in the header a flag indicative of the type of encryption used on the associated file.

30. The method of claim 28 , further comprising the step of including in the header a flag indicative of a handling procedure to be performed on said encrypted file.

31. The method of claim 28 , further comprising the step of loading data from the encrypted file into a memory block containing other random data, said memory block having a beginning, wherein an offset from the beginning of the memory block of the data from the encrypted file changes each time the message monitoring program executable code is loaded.

32. The method of claim 28 , further comprising the step of including in the header a flag indicative of the length of the encrypted data, and a flag that allows the message monitoring program to search for the beginning of the encrypted data.

33. The method of claim 27 , wherein an action includes compressing said associated file.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2009
From: CGIT LLC
To: CONTROLGUARD SOFTWARE TECHNOLOGIES LTD
Reel/Frame 022354/0475 →
SECURITY AGREEMENT Recorded May 4, 2007
From: INTERFUSE TECHNOLOGY CORPORATION
To: ARTHUR LIPSON, TRUSTEE
Reel/Frame 019246/0382 →
NOTLCE OF ASSIGNMENT AND ASSUMPTION OF RIGHTS Recorded Nov 16, 2004
From: TOTAL SYSTEM SOLUTIONS, INC.
To: INTERFUSE TECHNOLOGY CORPORATION
Reel/Frame 015381/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 1, 2001
From: GOODMAN, DANIEL; KRUEGER, SCOTT
To: TOTAL SYSTEM SOLUTIONS, INC.
Reel/Frame 012223/0201 →
Continuity (2)
Provisional Application 6020426100 · May 15, 2000
Related Publication 20020033838A1 · Mar 21, 2002