Source: https://patents.google.com/patent/US20020052981A1/en
Timestamp: 2019-10-19 10:51:56
Document Index: 418113985

Matched Legal Cases: ['art 51', 'art 52', 'art 53', 'art 54', 'art 55', 'art 51', 'art 51', 'art 51', 'art 51', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 52', 'art 53', 'art 53', 'art 53', 'art 53', 'art 53', 'art 53', 'art 53', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 54', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 55', 'art 52', 'art 53', 'art 54', 'art 55', 'Application No.2000']

US20020052981A1 - Method for suppressing a menu, method for controlling copying and moving of data and computer-readable recording medium recorded with program code for controlling a menu - Google Patents
Method for suppressing a menu, method for controlling copying and moving of data and computer-readable recording medium recorded with program code for controlling a menu Download PDF
US20020052981A1
US20020052981A1 US09/940,662 US94066201A US2002052981A1 US 20020052981 A1 US20020052981 A1 US 20020052981A1 US 94066201 A US94066201 A US 94066201A US 2002052981 A1 US2002052981 A1 US 2002052981A1
US09/940,662
Hisao Yasuda
2000-08-31 Priority to JP2000-262971 priority Critical
2000-08-31 Priority to JP2000262971 priority
2001-08-29 Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
2001-08-29 Assigned to FFC LIMITED, FUJITSU LIMITED reassignment FFC LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: YASUDA, HISAO
2002-05-02 Publication of US20020052981A1 publication Critical patent/US20020052981A1/en
The present invention generally relates to methods for suppressing a menu, methods for controlling copying and moving of data and computer-readable recording media recorded with program code for controlling a menu. [0002]
Conventionally, in a computer such as a personal computer, an application activated on an OS (Operating System) displays several menus and the application executes a predetermined function (for example, copy or a like) selected by a user from a menu. Also, the application provides a function for moving data by dragging by a mouse. [0004]
In a case in which an application, which developed by a manufacture itself, conducts a transaction based on data processed by using another application developed by another manufacture, and the application is exhibited for users, generally, all functions provided in the application are available for the users. Thus, there are problems as follows: [0005]
(1) a system error could be occurred by an unexpected operation of users. [0006]
(2) a system destruction could be occurred by a malicious user replacing a system file. [0007]
(3) a file replacement could be occurred by a malicious user remotely operating a file at an internet cafe. [0008]
(4) a secret leak could be occurred by copying electronic information. [0009]
It is a general object of the present invention to provide methods for suppressing a menu, methods for controlling copying and moving of data and computer-readable recording media recorded with program code for controlling a menu in which the above-mentioned problems are eliminated. [0010]
A more specific object of the present invention is to provide a method for suppressing a menu, a method for controlling copying and moving of data and a computer-readable recording medium recorded with program code for controlling a menu, in which an application ID, which corresponds to a menu item of an application by an operation of a user, is extracted by a hook function of an OS (Operation System) and a definition file is referred and the menu item is suppressed to display, so that an incorrect operation, an information leak, a falsification and a system destruction can be prevented, instead of modifying the application and the OS. [0011]
The above objects of the present invention are achieved by a method for suppressing menu items on a menu, including the steps of: (a) retrieving the menu items for the menu when an operating system conducts a hook function to notify that an application displays the menu; (b) conducting a suppress process indicated in a definition file for each of the menu items when the menu items retrieved in the step (a) have been registered in the definition file; and (c) passing the menu having the menu items to the application when the suppress process is conducted in the step (b), whereby the menu is displayed with the menu items for each of which the suppress process is conducted. [0012]
According to the present invention, it can be realized that an error operation to the menu items by the user, the information leak, the falsification, or the system destruction is protected, instead of modifying the application or the OS. [0013]
The above objects of the present invention are achieved by a method for controlling a dialog box, including the steps of: (a) detecting a notice for displaying the dialog box and dialog items when an operating system conducts a hook function to notify that an application displays the dialog box; (b) conducting a suppress process indicated in a definition file for the dialog box when the notice for displaying the dialog box detected in the step (a) has been registered; and (c) passing the menu having the menu items to the application when the suppress process is conducted in the step (b), whereby the dialog box is displayed in which the suppress process is conducted for the dialog items. [0014]
According to the present invention, a save button in a save dialog box can be controlled to become invisible and also the save dialog box is disabled to save data. Therefore, it can be realized to prohibit the user saving data, instead of modifying the application or the OS. [0015]
The above objects of the present invention are achieved by a method for controlling copying of data, including the steps of: (a) detecting a notice for copying data when an operating system conducts a hook function to notify that a copy operation is conducted on an application; (b) clearing a content of a clipboard when the notice for copying data is detected in the step (a) has been registered in a definition file and a copy suppress is indicated in the definition file; and (c) passing the clipboard to the application when the content of the clipboard is cleared in the step (b), whereby the application copies the content of the clipboard which is empty. [0016]
According to the present invention, the content in the clipboard is cleared when the user copies data on the application. Therefore, it can be realized to the user copying data without notice, instead of modifying the application or the OS. [0017]
The above objects of the present invention are achieved by a method for controlling moving of data, including the steps of: (a) detecting a notice for moving data when an operating system conducts a hook function to notify that a move operation indicating a move-to location and a move-from location is conducted on an application; (b) changing the move-to location to the move-from location when the notice for moving data is detected in the step (a) has been registered in a definition file and a move suppress is indicated in the definition file; and (c) passing the move-to location to the application when the move-to location is changed in the step (b), whereby the application moves the data from the move-from location to the move-to location which is the move-to location. [0018]
According to the present invention, the move-to to the move-from is compulsory changed when the user moves data from the move-from to the move-to when the user moves data on the application. Therefore, it can be realized to the user moving data, instead of modifying the application or the OS.[0019]
Other objects, features and advantages of the present invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings, in which: [0020]
FIG. 1 is a diagram showing a functional configuration of a computer system according to an embodiment of the present invention; [0021]
FIG. 2 is a flowchart diagram showing a define operation by a user to create a definition file (definition file creation) according to the embodiment of the present invention; [0022]
FIG. 3 is a diagram showing the window example to create the definition file (definition file creation); [0023]
FIG. 4 is a flowchart diagram for explaining the hook function according to the embodiment of the present invention; [0024]
FIG. 5 is a flowchart diagram for explaining operations in a case in which a menu is displayed (menu display), according to the embodiment of the present invention; [0025]
FIG. 6A is a diagram showing one example of menu items suppressed to display (suppression), according to the embodiment of the present invention and [0026]
FIG. 6B is a diagram showing another example of menu items suppressed to display (suppression), according to the embodiment of the present invention; [0027]
FIG. 7A is a diagram showing operations of the user, a hook function of OS, and operations (input) of an application and [0028]
FIG. 7B is a flowchart diagram for explaining a typical process example executed when a menu initialization is conducted by a basic hook (hook FB); [0029]
FIG. 8 is a flowchart diagram for explaining a setting for suppressing a copy operation by the user, according to the embodiment of the present invention; [0030]
FIG. 9 is a flowchart diagram for explaining an operation for suppressing copying of data according to the embodiment of the present invention; [0031]
FIG. 10 is a flowchart diagram for explaining a setting for suppressing a move operation by the user, according to the embodiment of the present invention; [0032]
FIG. 11 is a flowchart diagram for explaining an operation for suppressing moving of data according to the embodiment of the present invention; [0033]
FIG. 12 is a flowchart diagram for explaining a setting for suppressing a save operation by the user, according to the embodiment of the present invention; [0034]
FIG. 13 is a flowchart diagram for explaining an operation for suppressing saving of data according to the embodiment of the present invention; [0035]
FIG. 14 is a front view of a computer system according to the embodiment of the present invention; [0036]
FIG. 15 is a diagram showing a hardware configuration of the computer system according to the embodiment of the present invention; and [0037]
FIG. 16 is a diagram showing a network system in which the tool is installed, according to the present invention.[0038]
A functional configuration of a computer system solving the above problems will now be described with reference to FIG. 1. FIG. 1 is a diagram showing the functional configuration of the computer system according to an embodiment of the present invention. [0039]
In FIG. 1, the computer system [0040] 100 as a user terminal includes a tool 1, an OS (Operating System) 2, and at least one application 3. The tool 1 is a resident program between the OS 2 and the application 3, and controls to suppress a menu display, a dialog box display, a copy operation, a move operation, or the like (described later). The tool 1 further includes a definition file 4, a definition file creating part 51 (described in FIG. 2 and FIG. 3), a menu item suppress processing part 52 (described in FIG. 5), a copy suppress processing part 53 (described in FIG. 9), a move suppress processing part 54 (described in FIG. 11), and a save suppress processing part 55 (described in FIG. 13).
The OS [0041] 2 is an operating system and conducts several controls (described later).
The application [0042] 3 is an application program. In this embodiment, it is assumed that the application 3 conducts several transactions by a menu display, a dialog box display, a copy operation, a move operation and the like.
An operation of the tool [0043] 1 will now be described.
The tool [0044] 1 retrieves menu items to display for a menu when the OS 2 conducts a hook function to notify of the tool 1 that an instruction of displaying a menu for the application 3 is conducted. When the retrieve menu items are defined beforehand in a definition file 4 and a control form, which is a suppress method, is registered for the retrieved menu, the tool 1 sends the retrieved menu to the application 3 after conducting a suppress process for the retrieved menu based on the control form.
In addition, when the OS [0045] 2 conducts the hook function to notify of the tool 1 that an instruction of displaying a menu for the application 3 is conducted, the tool 1 retrieves the menu items for the menu and also an application ID of the menu items. When the control form for the retrieve menu items is registered in the definition file 4 in which a plurality of menu items are defined beforehand, tool 1 conducts the suppress process registered for a location of the retrieved application ID corresponding to the menu items. Then, the tool 1 sends the menu including the menu items that the suppress process is conducted for, to the application 3 to display.
Also, when a dialog box display is instructed and then the OS [0046] 2 conducts the hook function to notify an instruction of the tool 1, the tool 1 detects the instruction of displaying the dialog box and dialog items. When the tool 1 detects the instruction of displaying the dialog box and a control form for the detected dialog items is registered in the definition file in which a plurality of dialog items are defined beforehand, the tool 1 conducts the suppress process for the retrieved dialog items based on the control form. Then, the tool 1 sends the dialog box which the suppress process is conducted for, to the application 3 to display.
In the suppress process, the tool [0047] 1 conducts at least one of an operation suppress and an operation prohibition mark display for an item, the operation suppress and a brightness or color suppress display for the item, or the operation suppress and operation suppress for the item.
Also, when a data copy is instructed and then the OS [0048] 2 conducts the hook function to notify an instruction of the tool 1, the tool 1 detects the instruction of a copy operation by the user. When the tool 1 detects the copy operation and a copy suppress is registered in the definition file, the tool 1 clears a content in a clipboard and then sends the cleared clipboard to the application 3. The application 3 copies the content (actually no data) in the clipboard.
Also, when a data move indicating a data move-from and a data move-to is instructed and then the OS [0049] 2 conducts the hook function to notify an instruction of the tool 1, the tool 1 detects the instruction of a move operation by the user. When the tool 1 detects a move operation and a move suppress is registered in the definition file, the tool 1 changes the move-to to the move-from and then sends the changed move-to to the application 3. The application 3 moves data to the changed move-to.
Also, when the data move-to is indicated and the OS [0050] 2 conducts the hook function to notify and instruction of the tool 1, the tool 1 detects an instruction of a move-to operation by the user. When the move-to operation is detected and the move suppress is registered in the definition file, the tool 1 changes the move-to to the move-from and sends the changed move-to to the application 3 so that the application 3 moves data to the move-to that is actually original location (move-from).
Accordingly, in response to an operation of user, the OS [0051] 2 conducts the hook function and then the tool 1 retrieves the application ID corresponding to a menu item of the application 3, refers to the definition file, and processes to suppress a function corresponding to the menu item. Therefore, it can be realized that an error operation by the user, a information leak, a falsification, or a system destruction is protected, instead of modifying the application 3 or the OS 2.
Next, details of functional operations will now be described with reference to FIG. 2 through FIG. 13. [0052]
FIG. 2 is a flowchart diagram showing a define operation by a user to create a definition file (definition file creation) according to the embodiment of the present invention. In FIG. 2, the user is a system manager who has a responsibility of preventing the incorrect operation by ordinary users, the information leak, the falsification, and the system destruction, and the system manager sets up each user terminal in accordance with the flowchart shown in FIG. 2. In FIG. 2, it is shown that the define operation by the system manager define a control form for each of menu items (top level items and sub level items) on the menu and then the definition file (an operation environment definition file) [0053] 4 is created.
In step S[0054] 1 of FIG. 2, the system manager executes the tool 1 to create the definition file 4 for a desired application. The tool 1 executes the definition file creating part 51 and then the definition file creating part 51 displays a define window at a display unit of the user terminal. Then, the system manager selects the desired application. That is, the system manager selects one application 3 (application program, software, or a like) necessary to suppress menu items on a menu.
In step S[0055] 2, the system manager selects a menu type. That is, the system manager selects one menu type that is used in the application 3 selected in step S1.
In step S[0056] 3, the definition file creating part 51 of the tool 1 displays menu items.
In step S[0057] 4, the definition file creating part 51 displays a menu list. That is, as shown in FIG. 3 that will be described later, by step S3 and step S4, a list (top level menus and sub menus) of entire menus for the menu type selected in step S2 of the application 3 selected in step S1 are displayed. In a window example shown in FIG. 3, a menu item on a top level menu is listed at a top row and then sub menu items are listed for each sub menu in following rows.
In step S[0058] 5, the system manager selects desired menu items. That is, for example, the system manager selects one or more desired menu items, which are to be suppressed, from the menu list that is displayed at a right side in the window example of FIG. 3 in step S4.
In step S[0059] 6, the system manager sets a control form for the desired menu items selected in step S5. That is, the system manager indicates one of control forms as shown in a control form field in FIG. 3:
normal (display with a prohibition mark, disable operation) [0060]
gray (display in gray, disable operation) [0061]
delete (delete not to display, disable operation) [0062]
no response (display, but disable operation). [0063]
In this case, displaying in gray can be to display in darker luminosity than a normal display or in a darker color. [0064]
In step S[0065] 7, the system manager determines whether or not the system manager completes to indicate control forms for all desired menus. When the system manager determines that the system manager completes to indicate control forms for all desired menus (YES), the system manager clicks OK button to save a new definition file (operation environment definition file) 4 (step S8) and then completes all operations to create the new definition file 4 (END). On the other hand, when the system manager determines that the system manager has not completed yet to indicate control forms for all desired menus (NO), the system manager goes back to step S4 and repeats the above steps.
As described above, it is possible for the system manager to select menu items necessary to suppress, from the menu item list for all menu items on the menus that are used by the application [0066] 3, and to indicate a control form for the menu items selected, and then to save the control form by relating to the menu items to the definition file (operation environmental definition file) 4.
FIG. 3 is a diagram showing the window example to create the definition file [0067] 4 (definition file creation). Only the system manager is allowed to create the definition file 4.
In a window [0068] 170 for setting menu item details as the window example shown in FIG. 3, right side field includes pull-down menus, and automatically retrieve and display the menu list for all menu items on the menus used by the application 3 that are selected by the system manager.
A left side field shows menu items (character strings) that are selected from the menu list shown in the right side fields to suppress. For example, three menu items of “HELP”, “NEW” and “FILE” are registered. It is not shown in FIG. 3, but the control form is registered for each or the entire of these menu items (character strings) selected by the system manager. [0069]
The control form field shown in a center field of the window [0070] 170 is for indicating and registering the control form of the menu item selected from the menu list shown in the right side fields.
As describe above, the menu item list of all the menu items on the menu of the application [0071] 3 is displayed, so that the system manager can select menu items from the menu item list and indicate the control form to register (as a prohibited item list in FIG. 3). Then, the definition file 4 is created.
In detail, the window [0072] 170 is opened at the display unit of the user terminal after the user selects the application 3 in the step S1 in FIG. 2. In the window 170, the system manager selects one menu type to a menu list 171 on the right side field in the step S2 in FIG. 2. A menu item 174 shows potential menu items related to the menu type selected from the menu list 171. The potential menu items are registered beforehand.
When the system manager selects one of the potential menu items and clicks an add button [0073] 81 by a mouse, a selected potential menu item is moved to and additionally shown in a prohibited item list 173 shown in the left side field. When the system manager selects one item from the prohibited item list 173 and clicks a delete button 82 by a mouse, a selected item goes back to the menu item 174.
When the system manager completes to select items to prohibit, the system manager selects one control form in a control form [0074] 176 shown in the center field and then clicks an OK button 178 to save or a cancel button 85 not to save.
In addition, the system manager can add a menu item, which is not listed in the menu item [0075] 174, by inputting in an additional item 83 and clicking an add button 84.
FIG. 4 is a flowchart diagram for explaining the hook function according to the embodiment of the present invention. [0076]
In step S[0077] 11 of FIG. 4, the tool 1 is automatically executed by the OS 2 when the OS 2 is activated. That is, a program acting as the tool 1 shown in FIG. 5 is executed and resides in a memory unit of the computer system 100.
In step S[0078] 12, the tool 1 reads the definition file (environmental definition file) 4. That is, the tool 1 reads the definition file 4 to which the system manager selects the menu items from the window 170 as shown in FIG. 3, indicates and registers the control form in accordance with the flowchart described in FIG. 2.
In step S[0079] 13, the tool 1 sets up the hook function. That is, for example, the tool 1 sets up a hook location for all applications 3 for the OS 2 (setup of system-wide hook)(described later with reference to FIG. 7).
In step S[0080] 14, the tool 1 starts the hook function.
As described above, it is possible for the tool [0081] 1 to reside, read the definition file 4, and start the hook function (notifying of the tool 1 by the hook location) for all applications 3.
FIG. 5 is a flowchart diagram for explaining operations in a case in which a menu is displayed (menu display), according to the embodiment of the present invention. In FIG. 5, the operations, in a case in which the system manager selects the menu item on the menu displayed at a system manager terminal and a process corresponding to the menu item is conducted, is explained. [0082]
The OS [0083] 2 is an operating system and conducts several controls. In this embodiment, the OS 2 includes the hook function and notifies of the tool 1 via the hook location, and the tool 1 sends the menu to the application 3 after the tool 1 conducts several suppress processes for the menu items on the menu.
When the tool [0084] 1 is notified of from the OS 2 via the hook location, the tool 1 conducts the suppress process (corresponding to the control form set by the system manager) for the menu items on the menu, and then sends to the application 3.
Each application [0085] 3 conducts various processes based on the menu and the menu item selected by the system manager.
In step S[0086] 21 in FIG. 5, a user instructs to execute the application 3.
In step S[0087] 22, the application 3 is executed in accordance with the execution instruction conducted by the user in step S21. As described in FIG. 4, the tool 1 resides and has already read the definition file 4.
In step S[0088] 23, the OS 2 conducts a menu initialization.
In step S[0089] 24, the OS 2 conducts a hook (F1) when the menu is initialized, and the tool 1 takes over to control from the OS 2.
In step S[0090] 25, when the tool 1 is notified via the hook location by the hook (F1) conducted by the OS 2, the tool 1 executes the menu item suppress processing part 52 and the menu item suppress processing part 52 analyzes a menu message.
In step S[0091] 26, the menu item suppress processing part 52 searches for an application menu ID corresponding to a menu item. That is, when the tool 1 is notified in the step S25, the menu item suppress processing part 52 executed by the tool 1 searches for the application menu ID for the menu corresponding to all menu items on the menu (the menu initialized in the step S23). The menu item suppress processing part 52 searches for the application menu ID on the menu of the application 3 for the menu item (for example, a character string “NEW” shown in the left side field in FIG. 3), and then stores the application menu ID by relating to the menu item. Thus, it is possible to determine a location of the menu item on the menu since the application menu ID uniquely specifies the location of the menu item. By relating the menu item (character string) in one definition file 4 to the location of the menu item on the menu of the application 3, advantageously, it is possible to suppress the menu item at the location related in the definition file 4.
In step S[0092] 27, the menu item suppress processing part 52 searches for a character string showing the menu item from the definition file 4. That is, the menu item suppress processing part 52 determines whether or not each menu item on the menu searched in the steps S25 and S26 is registered so as to suppress.
In step S[0093] 28, it is determined whether or not the same character string is found in the definition file 4. When the same character string is found (YES), it is determined that the same character string showing the menu item retrieved from the menu is registered in the definition file 4, and then the menu item suppress processing part 52 advances to step S29. On the other hand, when the same character string is not found (NO), it is determined that the same character string showing the menu item retrieved from the menu and it is determined that the suppress control is not conducted. Thus, the menu item suppress processing part 52 advances to step S35.
In step S[0094] 29, the control form is retrieved from the definition file 4 since it is determined as “YES” in the step S28 that the suppress control is to be conducted.
In step S[0095] 30, the suppress process is conducted. That is, the menu item suppress processing part 52 conducts one of the suppress processes in step S31 through S34, which corresponds to the control form retrieved in step S29, for the menu item on the menu.
In step S[0096] 31, since it is determined that the control form retrieved in the step S29 indicates to prohibit the menu item, the menu item suppress processing part 52 additionally provides a prohibition mark to the menu item on the menu and also sets the operation disable to the menu item. Accordingly, an operation for the menu is disabled even if the user selects the menu item. Then, the menu item suppress processing part 52 advances to step S35.
In step S[0097] 32, since it is determined that the control form retrieved in the step S29 indicates to display the menu item in gray, the menu item suppress processing part 52 sets the menu item on the menu to be displayed in gray and also sets the operation disable to the menu item. Accordingly, the operation for the menu is disabled even if the user selects the menu item. Then, the menu item suppress processing part 52 advances to the step S35.
In step S[0098] 33, since it is determined that the control form retrieved in the step S29 indicates to delete the menu item, the menu item suppress processing part 52 deletes the menu item on the menu not to display and also sets the operation disable to the menu item. Accordingly, the operation for the menu is disabled even if the user selects a location of the menu item that is deleted. Then, the menu item suppress processing part 52 advances to the step S35.
In step S[0099] 34, since it is determined that the control form retrieved in the step S29 indicates not to respond, the menu item suppress processing part 52 remains to display the menu item on the menu and also sets no response (operation disable) to the menu item. Accordingly, the operation for the menu is disabled even if the user selects the menu item. Then, the menu item suppress processing part 52 advances to the step S35.
In step S[0100] 35, the menu item suppress processing part 52 determines whether or not the menu item suppress processing part 52 completes the above steps for all same character strings. When the menu item suppress processing part 52 completes the above steps for all same character strings (YES), the menu item suppress processing part 52 terminates the operation for suppressing the menu ites. When the menu item suppress processing part 52 has not completed yet (NO), the menu item suppress processing part 52 goes back to the step S26 and repeats the above steps for a next menu item on the menu.
In step S[0101] 36, the application 3 displays the menu. That is, the application 3 displays the menu based on all menu items on the menu that the menu item suppress processing part 52 conducts the suppress process to or not in the step S30.
In step S[0102] 37, the user operates the menu displayed in the step S36.
In step S[0103] 38, the application 3 conducts a menu process in response to an operation (a selection) of the user to the menu item on the menu. In detail, when the user operates the menu item which the suppress process is conducted for in the step S30, the application 3 conducts a given operation (operation disable or no response) set by the menu item suppress processing part 52 in the steps S31 through S34. On the other hand, when the step S30 is skipped and the suppress process is not conducted for the menu items, the menu process corresponding to the menu item selected by the user is conducted.
As described above, the application [0104] 3 is executed in a state in which the tool 1 resides and read the definition file 4 beforehand and the hook function is set. When the OS 2 conducts the hook function to automatically notify of the tool 1 via the hook location, the menu item suppress processing part 52 executed by the tool 1 conducts the suppress process for the menu items based on the definition file 4 in accordance with the steps S25 through S35 and then the menu having the menu items for which the suppress process is conducted is sent to the application 3. Thus, it is possible to suppress various operations conducted by the user in accordance with the menu for which menu items the suppress process is conducted. The menu items on the menu can be automatically modified to prohibit (operation disable), display in gray (operation disable), delete (operation disable), or not to respond (operation disable). Accordingly, it can be realized to prevent the incorrect operation by the user, the information leak, the falsification, and the system destruction, instead of modifying the application 3 or the OS 2.
FIG. 6A and FIG. 6B are diagrams showing examples of menu items suppressed to display (suppression), according to the embodiment of the present invention. In FIG. 6A and FIG. 6B, two cases in which the suppress process is conducted for the menu items on the menu are illustrated. [0105]
A menu indicated by (a-1) in FIG. 6A illustrates an example in which a menu item “Forward” is displayed in gray (operation disable) (step S[0106] 32 in FIG. 5).
Another menu indicated by (a-2) in FIG. 6A illustrates a further example in which other menu items “File” and “Edit” in the menu indicated by (a-1) are displayed in gray (operation disable). [0107]
As shown in the menus indicated by (a-1) and (a-2) in FIG. 6A, by registering the menu items “Forward”, “File”, “Edit”, and a like and registering the control form for the menu items, the menu item suppress processing part [0108] 52 automatically conducts the suppress process (S30) for the menu based on the definition file 4 in accordance with the flowchart shown in FIG. 5. Also, the application 3 conducts various processes based on the menu for which the suppress process is conducted. Therefore, it can be realized to prevent the incorrect operation by the user, the information leak, the falsification, and the system destruction, instead of modifying the application 3 or the OS 2.
A menu indicated by (b-1) in FIG. 6B illustrates an example in which menu items “Save background as”, “Save as wallpaper”, and “Copy background” are displayed in gray (operation disable). [0109]
Another menu indicated by (b-2) in FIG. 6B illustrates a further example in which other menu items “Back to” and “Proceed” in the menu indicated by (b-1) are displayed in gray (operation disable). [0110]
Such as the examples indicated by (b-1) and (b-2) in FIG. 6B, by registering the menu items on the menu to the definition file [0111] 4 and registering the control form, the menu item suppress processing part 52 automatically conducts the suppress process (S30) for the menu based on the definition file 4 in accordance with the flowchart shown in FIG. 5, and then the application 3 conducts various processes based on the menu for which the suppress process is conducted. Therefore, it can be realized to prevent the incorrect operation by the user, the information leak, the falsification, and the system destruction, instead of modifying the application 3 or the OS 2.
The hook function according to the embodiment of the present invention will be explained with reference to FIG. 7A and FIG. 7B. [0112]
FIG. 7A is a diagram typically showing operations of the user, the hook function of OS, and operations (input) of the application [0113] 3.
A status indicated by (a-1) in FIG. 7A typically illustrates an operation stream of a basic part operated by the hook function. For example, this operation stream is related to a basic operation by the hook function such as a menu initialization. When the user operates the basic part, the OS [0114] 2 conducts a basic hook (FB) such as a window message hook at a predetermined location (for example, a hook function after the menu initialization), sends to the application 3 to execute a basic operation (for example, display an initialized menu).
Similarly, other statuses indicated by (a-2) and (a-3) typically illustrates other operation streams. In other status indicated by (a-2) and (a-3), the OS [0115] 2 conducts a key hook (FK) or a mouse hook (FM) at a predetermined location when the user operates a key or a mouse and then application 3 starts to control processing a key input or a mouse input.
FIG. 7B is a flowchart diagram for explaining a typical process example executed when the menu initialization is conducted by the basic hook (hook FB). [0116]
In step S[0117] 41 in FIG. 7B, the user operates the menu.
In step S[0118] 42, a menu initialization message is issued.
In step S[0119] 43, the OS 2 initializes the menu and conducts a hook FB-1 to notify the menu initialization message of the application 3 (hereinafter called a suppressed application 3) to display the menu.
In step S[0120] 44, the suppressed application 3 displays the menu.
In step S[0121] 45, when the user selects a menu, a selection message is issued.
In step S[0122] 46, the OS 2 conducts a hook FB-2 and notifies the selection message of the suppressed application 3.
In step S[0123] 47, when notified, the suppressed application 3 selects the menu based on the message issued in the step S45.
In step S[0124] 48, when the user determines a menu item, a determination message is issued.
In step S[0125] 49, the OS 2 conducts a hook FB-3 and notifies the determination message of the suppressed application 3.
In step S[0126] 50, the suppressed application 3 determines the menu item based on the determination message. In step S51, the suppressed application 3 executes a process corresponding to the menu item determined in the step S50.
As described above, the OS [0127] 2 conducts the hooks FB-1, FB-2, and FB-3 at the menu initialization, the menu selection, and the menu item determination, respectively, and then notifies of the suppressed application 3. Then, the suppressed application 3 executes various processes for the menu display, the menu selection, the menu item determination and each menu item. The tool 1 according to the embodiment of the present invention can realize to conduct the suppress process (step S30 in FIG. 5) based on the definition file 4 in response to a notice from the OS 2 when the hooks FB-1, FB-2, and FB-3 are conducted, respectively, and to notify the menu, for which the suppress process is conducted, of the suppressed application 3.
FIG. 8 is a flowchart diagram for explaining a setting for suppressing a copy operation by the user, according to the embodiment of the present invention. [0128]
In step S[0129] 61 in FIG. 8, the system manager executes the tool 1.
In step S[0130] 62, the system manager sets a clipboard canceller to suppress or allow the copy operation by the user. That is, the system manager sets “ON” to the clipboard canceller in order to suppress copying of data through a clipboard, or sets “OFF” to the clipboard canceller in order to allow to copy data through the clipboard.
In step S[0131] 63, the system manager saves a setting of the clipboard canceller to the definition file (the operation environment definition file) 4.
As described above, it is possible to prohibit copying of data through the clipboard. [0132]
FIG. 9 is a flowchart diagram for explaining an operation for suppressing copying of data according to the embodiment of the present invention. [0133]
In step S[0134] 71 in FIG. 9, the user conducts a copy operation for copying data on the display unit of the user terminal.
In step S[0135] 72, in response to the copy operation by the user, the OS 2 transfers data at a copy-from to the clipboard.
In step S[0136] 73, the OS 2 conducts the hook FB and notifies the copy operation by the user of the tool 1.
In step S[0137] 74, the tool 1 detects that data at the copy-from is transferred to the clipboard and the tool 1 executes the copy suppress processing part 53.
In step S[0138] 75, the copy suppress processing part 53 determines whether or not to suppress copying of data. That is, when the data is transferred to the clipboard in the step S74, the copy suppress processing part 53 refers to the definition file 4 to determine whether or not the clipboard canceller is set to “ON”.
In step S[0139] 76, the copy suppress processing part 53 checks whether or not a determination result in the step S75 shows to suppress copying of data. That is, when the determination result based on the setting of the clipboard canceller in the step S75 shows “ON” (YES), the copy suppress processing part 53 advances to step S77. On the other hand, when the determination result based on the setting of the clipboard canceller in the step S75 shows “OFF” (NO), the copy suppress processing part 53 terminates the operation for suppressing copying of data.
In step S[0140] 77, since the setting of the clipboard canceller in the definition file 4 is “ON” (YES in the step S76), the copy suppress processing part 53 clears data transferred into the clipboard.
In step S[0141] 78, the user conducts a paste instruction for pasting the data copied in the step S71.
In step S[0142] 79, in response to the paste instruction by the user, the application 3 replaces the data with empty data in the clipboard at a location where the user pastes the data. That is, when the data transferred into the clipboard is cleared in the step S77 (the clipboard canceller in the definition file 4 is set to “ON”), the cleared data is copied to a copy-to. As a result, the original data at the copy-from cannot be copied (can be prohibited or suppressed). On the other hand, when the clipboard canceller in the definition file 4 is set to “OFF”, the original data at the copy-from is copied to the copy-to since the data transferred from the copy-from to the clipboard is not cleared (a normal copy operation via the clipboard is conducted).
As described above, by simply setting “ON” for the clipboard canceller in the definition file [0143] 4, it is possible to prohibit (suppress) copying of data through the clipboard.
FIG. 10 is a flowchart diagram for explaining a setting for suppressing a move operation by the user, according to the embodiment of the present invention. [0144]
In step S[0145] 81 in FIG. 10, the system manager executes the tool 1.
In step S[0146] 82, the system manager selects one application in that the move operation is prohibited.
In step S[0147] 83, the system manager sets a drop prohibition to suppress or allow the move operation by the user. That is, when the system manager sets “ON” to the drop prohibition, it is prohibited to move data by a drop operation by using a mouse.
In step S[0148] 84, the system manager saves a setting of the drop prohibition to the definition file (the operation environment definition file) 4.
As described above, it is possible for the system manager to set the drop operation so as to prohibit moving of data by the drop operation by using mouse. [0149]
FIG. 11 is a flowchart diagram for explaining an operation for suppressing moving of data according to the embodiment of the present invention. [0150]
In step S[0151] 91 in FIG. 11, the user presses the mouse (left button) at a location (move-from) of data that the user wants to move. In step S92, in response to this mouse click by the user, the OS 2 conducts the hook (FM) to notify of the tool 1.
In step S[0152] 93, the tool 1 executes the move suppress processing part 54 and then the move suppress processing part 54 stores the location (move-from) where the user pressed the mouse in the step S91.
In step S[0153] 94, the application 3 is activated.
In step S[0154] 95, the user drags the mouse to move data to another location (move-to) while the user presses the mouse (left button).
In step S[0155] 96, in response to this move operation, the data moves on the application 3.
In step S[0156] 97, the user releases the mouse (left button).
In step S[0157] 98, the OS 2 conducts a process for a case in which the user releases the mouse (left button) up.
In step S[0158] 99, the move suppress processing part 54 searches for the location (move-to) where the user releases the mouse (left button).
In step S[0159] 100, the move suppress processing part 54 searches for the application 3 on the location (move-to) where the user releases the mouse (left button).
In step S[0160] 101, the tool 1 determines whether or not the application 3 is to be suppressed. That is, the move suppress processing part 54 refers to the definition file 4 and determines whether or not the application 3 is the application selected and registered by the system manager in the step S82 in FIG. 10. When the move suppress processing part 54 determines that the application 3 is registered (YES), the move suppress processing part 54 advances to step S102. On the other hand, when the move suppress processing part 54 determines that the application is not registered (NO), the move suppress processing part 54 terminates the operation for suppressing moving of data.
In step S[0161] 102, the move suppress processing part 54 moves a current mouse location to the location (move-from) that is stored in the step S93, since the application 3 is registered in the definition file 4 to suppress moving of data in the step S101 (YES).
In step S[0162] 103, the move suppress processing part 54 releases the mouse (left button). That is, software releases the mouse at the location (move-from).
In step S[0163] 104, the application 4 conducts a copy process for copying data from the move-from to the move-to. That is, in a case in which the drop prohibition for the application 3 on the location where the user releases the mouse is set to “ON” in the definition file 4, the move suppress processing part 54 of the tool 1 compulsory moves the current mouse location to the move-from that is the location stored in the step S93 and releases the mouse (left button) (the steps S101 (YES), S102, and S103). As a result, the application 3 ends up copying the data from the move-from to the move-from. Therefore, it is possible to suppress (prohibit) moving of data. On the other hand, in a case in which the move suppress processing part determines that the application 3 is not required to suppress moving of data in step S101 (NO), the application 3 normally copies the data from the move-from where the user presses the mouse at the move-to where the user releases the mouse.
FIG. 12 is a flowchart diagram for explaining a setting for suppressing a save operation by the user, according to the embodiment of the present invention. [0164]
In step S[0165] 111 in FIG. 12, the system manager executes the tool 1.
In step S[0166] 112, the system manager selects one application in that the save operation is prohibited.
In step S[0167] 113, the system manager sets a data save prohibition to suppress or allow the save operation by the user. That is, when the system manager sets “ON” to the data save prohibition, it is prohibited for the user to save data by selecting an item in a dialog box.
In step S[0168] 114, the system manager saves a setting of the data save prohibition to the definition file (the operation environment definition file) 4.
As described above, it is possible for the system manager to set the data save prohibition so as to prohibit saving of data by selecting an item in the dialog box. [0169]
FIG. 13 is a flowchart diagram for explaining an operation for suppressing saving of data according to the embodiment of the present invention. [0170]
In step S[0171] 121 in FIG. 13, the user conducts the save operation at the display unit of the user terminal.
In step S[0172] 122, in response to the save operation by the user, the application 3 conducts a saving process for saving data.
In step S[0173] 123, the application 3 processes to display a save dialog box for the user to save data.
In step S[0174] 124, the OS 2 conducts the hook FB and notifies of the tool 1.
In step S[0175] 125, the tool 1 executes the save suppress processing part 55 and the save suppress processing part 55 determines whether or not the application 3 is to be suppressed. That is, the save suppress processing part 55 refers to the definition file 4 and determines whether or not the application 3 is the application selected and registered by the system manager. When the save suppress processing part 55 determines that the application 3 is registered (YES), the save suppress processing part 55 advances to step S126. On the other hand, when the save suppress processing part 55 determines that the application is not registered (NO), the save suppress processing part 55 terminates the operation for suppressing saving of data.
In step S[0176] 126, the save suppress processing part 55 determines whether or not a dialog box notified by the hook FB is the save dialog box, since it is determined in the step S125 (YES) that the application 3 is to be suppressed in a case in which data is saved by the user.
In step S[0177] 127, the save suppress processing part 55 checks whether or not a determination result in the step S126 indicates the save dialog box. When the determination result indicates the save dialog (YES), the save suppress processing part 55 advances to step S128. On the other hand, when the determination result does not indicate the save dialog box (NO), the save suppress processing part 55 terminates the operation for suppressing saving of data.
In step S[0178] 128, the save suppress processing part 55 searches for a save button showing “SAVE”, “OK” or “YES” in the save dialog box.
In step S[0179] 129, the save suppress processing part 55 determines whether or not the save button is found. When the save button is found (YES), the save suppress processing part 55 advances to step S130. On the other hand, when the save button is not found (YES), the save suppress processing part 55 terminates the operation for suppressing saving of data.
In step S[0180] 130, the save suppress processing part 55 changes a button style of the save dialog box not to display the save button (invisible) and also sets the button style to disable to save the data.
In step S[0181] 131, the save dialog box is displayed at the display unit of the user terminal. In a case in which the button style of the save dialog box is changed not to display the save button (invisible) and also to disable to save the data, the user cannot save the data even if the user clicks the save dialog box.
As described above, when the user conducts the save operation, the button style of the save dialog box is changed not to display the save button (invisible) and also to disable to save the data in the case in which the tool [0182] 1 notified by the hook FB determines that the application 3 is registered in the definition file 4 and also the saving dialog is notified by the hook FB. Therefore, it is possible to prohibit (suppress) saving of data.
FIG. 14 is a front view of the computer system according to the embodiment of the present invention. In FIG. 14, the computer system [0183] 100 as the user terminal includes a main unit 10 for controlling the computer system 100, a mouse 141 and a keyboard 142 for inputting data, a display unit 15 and a CD-ROM driver 17.
The main unit [0184] 10 connects to and controls the mouse 141, the keyboard 142, the display unit 15, and the CD-ROM driver 17, in order to realize the operations described above. The mouse 141 and a keyboard 142 are used to input data. The display unit 15 displays, for example, the window 170 for setting menu item details in FIG. 2 for the system manager. The CD-ROM driver 17 is used to install various programs related to the tool 1 from a CD-ROM 20.
FIG. 15 is a diagram showing a hardware configuration of the computer system according to the embodiment of the present invention. In FIG. 15, the computer system [0185] 100 includes a CPU (Central Processing Unit) 11, a memory unit 12, an output unit 13, an input unit 14, the display unit 15, a storage unit 16, the CD-ROM driver 17, and a communication unit 18, all of which are connected together through a bus B. The CPU 11, the memory unit 12, the storage unit 16, the CD-ROM driver 17, and the communication unit 18 are mounted in the main unit 10 shown in FIG. 14.
The CPU [0186] 11 controls the computer system 100 in accordance with programs stored in the memory unit 12 and also executes processes realizing the operation described above. The memory unit 12 includes a RAM and a ROM and stores the programs executed by the CPU 11, data necessary for the processes, and data obtained by the processes. Also, the memory unit 12 is partially used as a working area for the processes executed by the CPU 11.
The output unit [0187] 13 includes a printer or the like and is used to output a process result or indicated information. The input unit 14 includes the mouse 141, the keyboard 142, or the like and is used to input information. The display unit 15 displays information for the system manager and the user.
The storage unit [0188] 16 includes a hard disk and stores files, databases and programs of the applications 3, tool 1 and a like. The communication unit 18 controls data transmissions for sending or receiving information.
For example, the programs related to the tool [0189] 1 are installed into the computer system 100 by loading the CD-ROM 20 into the CD-ROM driver 17. That is, when the CD-ROM 20 storing the programs is inserted in the CD-ROM driver 17, the CD-ROM driver 17 reads the program from the CD-ROM 20 and the programs read from the CD-ROM 20 are installed into the storage unit 16 via the bus B. When the process is executed, the CPU 11 executes the process in accordance with the program installed into the storage unit 16. It should be noted that a recording medium is not limited to the CD-ROM 20, but another computer-readable recording medium such as a magnetic disk, a magnetic tape, an optical disk, a magneto-optical disk, a semiconductor memory or the like may be used.
The tool [0190] 1 including the definition file 4, the definition file creating pat 51, the menu item suppress processing part 52, the copy suppress processing part 53, the move suppress processing part 54, and the save suppress processing part 55 can be provided to a server 200 in a network system 1000 as shown in FIG. 16.
FIG. 16 is a diagram showing the network system in which the tool [0191] 1 is installed, according to the present invention. In FIG. 16, the network system 1000 includes the server 200 and a plurality of user terminals 90, all of which are connected each other through a network 25. The tool 1 installed into the server 200 can realize to suppress the menu and control copying of data and moving of data as described above. Thus, parts and a file that are the same as the ones in FIG. 1 are indicated by the same reference numerals and a detailed explanation thereof will be omitted.
By installing tool [0192] 1 from the server 200 to each user terminal 90 through the network 25, it is also possible to suppress the menu and control copying of data and a moving of data at each user terminal 90. That is, the system manager accesses the server 200 to install the tool 1 into each user terminal 90. Accordingly, each user terminal 90 becomes functionally equal to the computer system 100 shown in FIG. 1. It should be noted that each user terminal 90 is similarly configured as shown in FIG. 14 and a hardware configuration of each user terminal 90 is also similar to the hardware configuration as shown in FIG. 16.
At each user terminal [0193] 90, the system manager sets up the menu item details on the menu provided in the application 30, sets the clipboard canceller to “ON” and the drop prohibition to “ON”, and sets the data save prohibition to “ON”. Then, all settings by the system manager are registered in the definition file 4 in each user terminal.
Therefore, it can be realized to prevent the incorrect operation by the user, the information leak, the falsification, and the system destruction, instead of modifying the application [0194] 3 or the OS 2.
As described above, according to the present invention, in response to an operation of user, the OS [0195] 2 conducts the hook function and then the tool 1 retrieves the application ID corresponding to a menu item of the application 3, refers to the definition file, and processes to suppress a function corresponding to the menu item. Therefore, it can be realized that an error operation by the user, the information leak, the falsification, or the system destruction is protected, instead of modifying the application 3 or the OS 2.
In addition, the tool [0196] 1 clears the content in the clipboard when the user copies data on the application 3, the tool 1 compulsory changes the move-to to the move-from when the user moves data from the move-from to the move-to, or the tool 1 makes the save button to become invisible in the save dialog box and also disables the save dialog box to save data. Therefore, it can be realized to prohibit the user copying data without notice, moving data, and saving data, instead of modifying the application 3 or the OS 2.
The present invention is not limited to the specifically disclosed embodiments, variations and modifications, and other variations and modifications may be made without departing from the scope of the present invention. [0197]
The present application is based on Japanese Priority Application No.2000-262971 filed on Aug. 31, 2000, the entire contents of which are hereby incorporated by reference. [0198]
US09/940,662 2000-08-31 2001-08-29 Method for suppressing a menu, method for controlling copying and moving of data and computer-readable recording medium recorded with program code for controlling a menu Abandoned US20020052981A1 (en)
JP2000-262971 2000-08-31
JP2000262971 2000-08-31
US20020052981A1 true US20020052981A1 (en) 2002-05-02
ID=18750572
US09/940,662 Abandoned US20020052981A1 (en) 2000-08-31 2001-08-29 Method for suppressing a menu, method for controlling copying and moving of data and computer-readable recording medium recorded with program code for controlling a menu
US (1) US20020052981A1 (en)
JP (3) JP4299478B2 (en)
WO2004109521A1 (en) * 2003-06-06 2004-12-16 Ed-Contrive Inc. Copy prevention program, computer-readable recording medium containing the program, and copy prevention system
JP5305864B2 (en) * 2008-11-28 2013-10-02 ソフトバンクモバイル株式会社 Information processing apparatus, information processing method, and information processing program
JP2012027864A (en) * 2010-07-27 2012-02-09 Axissoft Corp Spreadsheet control program, spreadsheet control device and spreadsheet control method
JP2014099052A (en) 2012-11-14 2014-05-29 International Business Maschines Corporation Apparatus for editing text, data processing method and program
JP6402346B2 (en) * 2014-03-12 2018-10-10 株式会社コナミデジタルエンタテインメント Processing system, server, terminal, server processing program, and terminal processing program
JP6099102B2 (en) * 2014-09-09 2017-03-22 日本電信電話株式会社 Server, operation support method, operation support program, and operation support system
2001-08-29 US US09/940,662 patent/US20020052981A1/en not_active Abandoned
2001-08-31 JP JP2001263912A patent/JP4299478B2/en active Active
2006-04-19 JP JP2006115738A patent/JP2006196026A/en active Pending
2006-06-13 JP JP2006163536A patent/JP2006294054A/en active Pending
WO2007021718A3 (en) * 2005-08-12 2009-04-23 First Data Corp Information-security systems and methods
WO2007021718A2 (en) * 2005-08-12 2007-02-22 First Data Corporation Information-security systems and methods
EP2306304A1 (en) * 2005-08-25 2011-04-06 Corizon Limited Methods for user interface generation and application modification
EP2306305A1 (en) * 2005-08-25 2011-04-06 Corizon Limited Methods for user interface generation and application modification
EP2315114A1 (en) * 2005-08-25 2011-04-27 Corizon Limited Methods for user interface generation and application modification
EP2320315A1 (en) * 2005-08-25 2011-05-11 Corizon Limited Methods for user interface generation and application modification
JP4299478B2 (en) 2009-07-22
JP2006294054A (en) 2006-10-26
JP2006196026A (en) 2006-07-27
JP2002149297A (en) 2002-05-24