Program, device designation method, and information processing apparatus
Patent Information
- Application Number
- JP2023148554
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-09-13
- Publication Date
- 2025-03-26
Smart Images

Figure 2025041336000001_ABST
Abstract
Description
[Technical field]
[0001] The technical field disclosed in this specification relates to a program capable of acquiring information from a specified device, a device specification method, and an information processing apparatus. [Background technology]
[0002] Conventionally, there are known programs capable of acquiring information from a specified device. For example, Patent Document 1 discloses a configuration in which a status monitor installed in a personal computer (PC) communicates with a printer to acquire the printer's status information, and displays the printer's status based on the status information on the PC's display. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2016-207138 A Summary of the Invention [Problem to be solved by the invention]
[0004] When there are multiple programs that can acquire information from a device and an information processing device switches between these programs, it is desirable for each program to appropriately specify a device to communicate with. Patent Document 1 does not disclose a process for considering the relationship with another program when specifying a device to communicate with for one program, and there is room for improvement. [Means for solving the problem]
[0005] The first program developed for the purpose of solving this problem is a first program executable by an information processing device and capable of causing the information processing device to obtain device information from a device designated as a communication target, and is configured to cause the information processing device to execute a designation process, when a predetermined condition for changing the communication target is satisfied, to designate a compatible device, which is a device compatible with the second program and is different from the first program, among the devices designated in the first program as communication targets and is capable of causing the information processing device to obtain device information from the device designated in the second program as a communication target, as a communication target of the second program.
[0006] According to the first program disclosed in this specification, when a predetermined condition for changing a communication target is satisfied, an information processing device designates, among devices designated as communication targets in the first program, devices that are compatible with the second program as communication targets for the second program. This can save the user the trouble of designating a new device in the second program when causing the second program to obtain device information.
[0007] The device designation method by the program, the information processing device having the program built in, the computer-readable storage medium storing the program, and the control method for realizing the functions of the program are also novel and useful. Effect of the Invention
[0008] The technology disclosed in this specification realizes a technology that is a program capable of acquiring information from a specified device, and that appropriately specifies the device to be acquired in relation to another program. [Brief description of the drawings]
[0009] [Figure 1] FIG. 2 is a block diagram showing the electrical configuration of a PC. [Diagram 2] FIG. 11 is an explanatory diagram showing an example of designation information. [Diagram 3] 11A and 11B are explanatory diagrams showing examples of a main screen and an error screen. [Figure 4] 13 is a flowchart showing a procedure of a first process. [Diagram 5] 13 is a flowchart showing a procedure of a takeover process. [Figure 6] FIG. 13 is an explanatory diagram showing an example of a repair instruction screen. [Figure 7] 13A and 13B are explanatory diagrams showing examples of an error notification screen and a selection instruction receiving screen. [Figure 8] 13 is a flowchart showing a procedure of a switching process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. In this specification, a program executed on a personal computer (hereinafter, referred to as a "PC").
[0011] As shown in Fig. 1, the PC 1 of this embodiment includes a controller 10 including a CPU 11 and a memory 12. The PC 1 is an example of an information processing device. The PC 1 also includes a user interface (hereinafter referred to as "user IF") 13 and a communication interface (hereinafter referred to as "communication IF") 14, which are electrically connected to the controller 10. Note that the controller 10 in Fig. 1 is a collective term for hardware and software used to control the PC 1, and does not necessarily represent a single piece of hardware actually present in the PC 1.
[0012] The CPU 11 executes various processes according to the programs read from the memory 12 and based on the user's operation. The memory 12 stores programs such as various application programs (hereinafter, referred to as "apps") and various data. The memory 12 is also used as a work area when various processes are executed. The buffer provided in the CPU 11 is also an example of a memory. Note that an example of the memory 12 is not limited to a ROM, RAM, HDD, etc. built into the PC 1, but may also be a storage medium that can be read and written by the CPU 11, such as a recording medium such as a CD-ROM or DVD-ROM.
[0013] The user IF 13 includes hardware for displaying a screen for notifying the user of information and hardware for accepting operations by the user. The user IF 13 may be a combination of a display capable of displaying information and a mouse or keyboard having an operation acceptance function, or may be a touch panel having a display function and an operation acceptance function.
[0014] The communication IF 14 includes hardware for communicating with an external device. The communication standards of the communication IF 14 are Ethernet (registered trademark), Wi-Fi (registered trademark), USB, etc. The PC 1 may include a plurality of communication IFs 14 compatible with a plurality of communication standards.
[0015] 1, an operating system (hereinafter referred to as "OS") 21, an old application 22, and a new application 23 are stored in the memory 12 of the PC 1. The old application 22 is an example of a second program, and the new application 23 is an example of a first program. The OS 21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), or Android (registered trademark).
[0016] The PC 1 of this embodiment can be connected to one or more devices 3 and a server 4 via the communication IF 14, for example, as shown in FIG. 1. For example, four printers (printer A 31, printer B 32, printer C 33, printer D 34) are connected to the PC 1 of this embodiment as devices 3. Each printer is, for example, an inkjet printer, a laser printer, or a thermal printer. Note that each printer is not limited to a single-function printing device, and may be a multifunction device having a printing function and a scanning function. Also, the four printers may be different models from each other, or may include the same model. Hereinafter, when there is no need to distinguish between them, they will be referred to as "device 3."
[0017] The server 4 is, for example, a cloud server, and stores various programs and data including an installer for the old application 22 and an installer for the new application 23. The PC 1 can download each installer from the server 4 via, for example, the Internet 100. Note that there may be a device 3 connected to the PC 1 via the Internet 100.
[0018] Both the old application 22 and the new application 23 are external devices connected to the PC 1, and are programs having a function of causing the CPU 11 of the PC 1 to execute a process of communicating with an external device designated as a communication target by each application and acquiring information about the device from that device. The information acquired by the old application 22 from the device and the information acquired by the new application 23 from the device are the same type of information. The old application 22 and the new application 23 are, for example, status monitors that monitor the device 3 by causing the CPU 11 to periodically acquire status information from the device 3. The status information is an example of device information.
[0019] The old application 22 and the new application 23 differ in at least one of the following, for example: version, functions other than the function for acquiring status information, compatible device models, and screen design for displaying information such as status information. The new application 23 may be, for example, an upgraded version of a program with the same name as the old application 22, or an upgraded program with a different name that has the same monitoring function. The new application 23 is an application that is installed on the PC 1 at a later time than the installation of the old application 22, and does not need to be a program that was developed or released recently.
[0020] The old application 22 and the new application 23 store information for identifying a device to communicate with and information for identifying a device to display, based on, for example, a user's selection, in a memory area used by each application. For example, if the OS 21 is Windows (registered trademark), an area called a "registry" can be used as a memory area. In this specification, the memory area used by the old application 22 is referred to as the old registry 221, and the memory area used by the new application 23 after the new application 23 is installed is referred to as the new registry 231.
[0021] Information about devices with which the old application 22 communicates is stored in the old registry 221. The old registry 221 is a memory area for the old application 22 and is an area referenced by the old application 22 when the old application 22 is executed. The old registry 221 is an example of a memory area for a second program and is an example of a second memory area. Information about devices with which the new application 23 communicates is stored in the new registry 231. The new registry 231 is a memory area for the new application 23 and is an area referenced by the new application 23 when the new application 23 is executed. The new registry 231 is an example of a memory area for a first program and is an example of a first memory area.
[0022] The old registry 221 and the new registry 231 store information about devices 3 that are communication targets and display targets of the old application 22 and the new application 23. Note that the old application 22 and the new application 23 can communicate with multiple devices. If multiple devices are communication targets, the old registry 221 and the new registry 231 store information about the multiple devices.
[0023] For example, as shown in FIG. 2, the new registry 231 stores designation information 50, which is information on devices 3 to be communication targets and display targets by the new application 23. The designation information 50 includes, for example, a device name 51, an IP address 52, a display flag 53, and handover information 54. The device name 51 is information indicating each device 3 to be communication targets by the new application 23. The device name 51 is, for example, the model name of the device. The device name 51 may be a name arbitrarily set by the user. The IP address 52 is connection information for each device 3. The designation information 50 in FIG. 2 is an example of designation information 50 in which four printers included in the device 3 are designated as devices to be communication targets.
[0024] The display flag 53 of the designation information 50 is information for setting, for each communication target device, whether or not it is to be displayed by the new application 23. In Fig. 2, among the devices 3, the printer D34, whose display flag 53 is set to "TRUE", is set as a device to be displayed on the main screen of the new application 23. For example, as shown in Fig. 3(A), the main screen 60 is a screen on which status information is displayed.
[0025] The main screen 60 is displayed by the user operating the icon of the old application 22 or the new application 23. As shown in Fig. 3(A), the main screen 60 displays, as status information, for example, a device status 62 and a remaining amount of consumables 63. Examples of the device status 62 include ready, ink empty, offline, paper jam, and cover open. In addition, the old application 22 or the new application 23 can accept the selection of another device included in the designation information 50 by operating a pull-down menu 61 on the displayed main screen 60, and display the status information of the accepted device.
[0026] Handover information 54 of designation information 50 is information indicating that the device has taken over the designation of communication target from another application. Information indicating the original application is associated with the information of the device taken over from another application as handover information 54. For example, new application 23 can take over a device that was designated as a communication target in old application 22 as a communication target of new application 23. A device for which "old application" is stored as handover information 54 is a device that has been designated as a communication target in old application 22. Handover information 54 is an example of designation history information.
[0027] The old application 22 acquires device information from a device designated as a communication target based on the designation information stored in the old registry 221. The old registry 221, like the new registry 231, stores designation information that is information on a device 3 to be a communication target and a display target by the old application 22.
[0028] The old application 22 and the new application 23 can accept a designation of one of the devices to which communication is to be made as the device to be displayed, and first display only the information of the device set as the device to be displayed when displaying the main screen 60. In other words, the status information of the device to be displayed is displayed more frequently on the main screen 60 than for other devices.
[0029] The old application 22 and the new application 23 monitor not only the display target device but also all devices specified in the specification information 50 by periodically communicating with them. Specifically, the old application 22 and the new application 23 periodically inquire of each device by polling to obtain status information from each device. When obtaining information regarding an error from a monitored device, the old application 22 and the new application 23 pop up an error screen 65 notifying the error on the task tray, as shown in FIG. 3B, for example. Errors that may be displayed on the error screen 65 include, for example, ink empty, offline, paper jam, and cover open.
[0030] Next, the procedure of the first process will be described with reference to the flowchart of FIG. 4. The first process is executed by the CPU 11 of the PC 1 when the new application 23 is started. The new application 23 may be started automatically, or may be started in response to an execution instruction by a user operation. The new application 23 is started, for example, to start being resident after being installed. The new application 23 is started in response to the start of the PC 1 to start being resident. The first process may be executed in response to an instruction to display the main screen (FIG. 3(A)) when the new application 23 is resident. Each process and each step in the following description basically indicates a process of the CPU 11 according to an instruction written in a program.
[0031] In the first process, the CPU 11 judges whether an error has occurred due to the execution of the new application 23 (S101). If it is judged that no error has occurred (S101: NO), the CPU 11 judges whether a user instruction has been accepted (S102). If it is judged that a user instruction has not been accepted (S102: NO), the CPU 11 monitors the device designated as the communication target (S103). That is, the CPU 11 periodically communicates with each device whose information is stored in the new registry 231, and acquires status information from each device. The CPU 11 may display the acquired status information on the user IF 13 based on the setting of the new application 23.
[0032] When it is determined that a user instruction has been received (S102: YES), the CPU 11 determines whether the received instruction is a switching instruction, an uninstallation instruction, or a takeover instruction (S105). A switching instruction is an instruction to switch a device that is a communication target of the new application 23 to a communication target of the old application 22. An uninstallation instruction is an instruction to uninstall the new application 23 from the PC 1. A takeover instruction is an instruction to take over a device that is a communication target of the old application 22 as a communication target of the new application 23.
[0033] When it is determined that the takeover instruction has been received (S105: takeover instruction), the CPU 11 executes a takeover process (S111). The takeover process is a process for taking over information on a device to be monitored from an old application 22 having a similar function. S105 when the takeover instruction has been received is an example of a takeover instruction receiving process. The procedure of the takeover process will be described with reference to the flowchart of FIG. 5.
[0034] In the takeover process, the CPU 11 determines whether the old application 22 is stored in the memory 12 (i.e., whether it is installed in the OS 21) (S201). If it is determined that the old application 22 is not stored (S201: NO), the CPU 11 notifies that takeover is not possible (S202) and ends the takeover process. For example, if the old application 22 has been uninstalled, the new application 23 cannot take over the information of the old application 22.
[0035] When it is determined that the old application 22 is stored (S201: YES), the CPU 11 acquires information on the device to be communicated with from the old registry 221 (S211). Then, for each device, it is determined whether the device is compatible with the new application 23 (S212). For example, the CPU 11 transmits a command to the IP address of the device from which the information was acquired to confirm whether the new application 23 is compatible, and makes the determination in S212 based on a response from the device. Alternatively, if the new application 23 has compatibility information indicating compatibility for each device model, the CPU 11 may make the determination in S212 based on the compatibility information. The CPU 11 may also inquire of the server 4 or the like about compatibility.
[0036] If it is determined that the device can be supported (S212: YES), the CPU 11 writes the information of the device stored in the old registry 221 to the designation information 50 (FIG. 2) of the new registry 231 (S214). Furthermore, the CPU 11 writes "old application" indicating that the information has been taken over from the old application 22 to the takeover information 54 of the device in the designation information 50 (S215).
[0037] The CPU 11 may delete the device information written in the new registry 231 in S214 from the old registry 221. Instead of deleting the device information from the old registry 221, the CPU 11 may write to the old registry 221 information indicating that the device is not a communication target.
[0038] After S215, or if it is determined that the device is not compatible (S212: NO), the CPU 11 determines whether or not the processing has been completed for all devices stored in the old registry 221 (S217). If it is determined that the processing has not been completed (S217: NO), the CPU 11 proceeds to S211 and performs processing for the next device stored in the old registry 221. If it is determined that the processing has been completed for all devices (S217: YES), or after the notification of S202, the CPU 11 ends the takeover processing and returns to the first processing.
[0039] In other words, by receiving the takeover instruction, the new application 23 can take over information on all devices that are compatible with the new application 23 and that were designated as communication targets of the old application 22. Therefore, the user does not need to perform an operation to designate each device to be monitored. Note that there may be multiple old applications that can take over device information, and the new application 23 may be able to accept designation of an application from which to take over information on a communication target device.
[0040] In addition to inheriting from the old application 22, the new application 23 can also accept a user's designation of a device to be communicated with. When the CPU 11 accepts a device designation by a user's operation, the CPU 11 writes information of the device to the new registry 231. In this case, the CPU 11 may leave the handover information 54 blank, or may store information indicating "none." For example, in the designation information 50 shown in FIG. 2, Printer A, Printer B, and Printer C, for which "old application" is stored in the handover information 54, are devices inherited from the old application 22, and Printer D, for which the handover information 54 is blank, is not a device inherited from the old application 22 but is a device added by the new application 23.
[0041] Returning to the explanation of the first process in Fig. 4, after completing the takeover process in S111, the CPU 11 proceeds to S101 and monitors the devices while determining whether an error has occurred or whether a user instruction has been accepted. The CPU 11 monitors, for example, four printers based on the designation information 50 (Fig. 2) stored in the new registry 231.
[0042] On the other hand, when it is determined that an error has occurred during execution of the new application 23 (S101: YES), the CPU 11 determines whether the error that has occurred is an error that can be repaired by the user (S121). A repairable error is, for example, a communication error. For example, if a device to be communicated with is offline or if the IP address of the device has changed, the PC 1 cannot communicate with the device.
[0043] When it is determined that the error is recoverable (S121: YES), the CPU 11 causes the user IF 13 to display a repair instruction screen for instructing the user to perform the repair (S122). For example, as shown in FIG. 6, the repair instruction screen 70 includes a message saying "Cannot communicate with printer A. Please check if printer A is turned on and if printer A is connected for communication." and an OK button 71. By notifying the user of information indicating the device in which the communication error has occurred and information indicating that the communication error has occurred on the repair instruction screen 70, the user is more likely to resolve the error. When the operation of the OK button 71 is accepted, the CPU 11 returns to S101, and resumes monitoring if the error has been resolved. The CPU 11 may also restart the new application 23.
[0044] When it is determined that the error that has occurred is an error other than a communication error and cannot be repaired by the user (S121: NO), the CPU 11 notifies the user that an unrecoverable error has occurred (S125). For example, as shown in FIG. 7(A), the CPU 11 causes the user IF 13 to display an error notification screen 80 including a message saying "An unrecoverable error has occurred." The error notification screen 80 may also include information indicating the device in which the error has occurred. Errors other than communication errors are highly likely to be errors that cannot be repaired by the user.
[0045] Then, the CPU 11 accepts a selection of whether or not to switch the program monitoring the device where the error occurred from the new application 23 to the old application 22 (S126). Specifically, the CPU 11 causes the user IF 13 to display a selection instruction accepting screen inquiring whether or not to remove the device where the error occurred from the communication targets of the new application 23 and add it to the communication targets of the old application 22, and accepts a user operation. S126 is an example of a selection accepting process.
[0046] For example, as shown in Fig. 7(B), the selection instruction receiving screen 90 includes a message "Switch monitoring of printer A to the old application?", a "Yes" button 91 for receiving an instruction to switch to the old application 22, and a "No" button 92 for receiving an instruction not to switch. Note that the CPU 11 may simultaneously display the error notification screen 80 shown in Fig. 7(A) and the selection instruction receiving screen 90 shown in Fig. 7(B).
[0047] For example, depending on the combination of the settings of the new application 23 and the device, an error other than a communication error may occur in the new application 23. If the device is a device taken over from the old application 22, for example, if the device is set as a communication target of the old application 22 again, there is a high possibility that the old application 22 will be able to continue obtaining status information from the device. However, if the application is automatically switched to the old application 22 due to the occurrence of an error or the like, the user may be confused because he or she does not know the reason for the switch. In this embodiment, the application is switched to the old application 22 after inquiring of the user and obtaining confirmation, so that the user's confusion can be avoided.
[0048] When it is determined that a selection to switch to the old application 22 has been accepted by accepting an operation on the "Yes" button 91 on the selection instruction accepting screen 90 (FIG. 7(B)) (S126: YES), the CPU 11 executes a switching process (S131). An error other than a communication error occurs (NO in S121) or a selection to switch to the old application 22 is accepted (YES in S126) as an example of a case where a predetermined condition is satisfied. The switching process is a process of switching a device designated as a communication target by the new application 23 to a communication target by the old application 22. The procedure of the switching process will be described with reference to the flowchart of FIG. 8.
[0049] The CPU 11 determines whether the old application 22 is stored in the memory 12 (S301). When it is determined that the old application 22 is not stored (S301: NO), the CPU 11 issues an instruction to install the old application 22 in the PC 1 (S302). S302 is an example of an installation process. The CPU 11 installs the old application 22 in the PC 1 by, for example, downloading an installer for the old application 22 from the server 4 and executing the downloaded installer. The CPU 11 may inquire of the user as to whether to download.
[0050] After the installation of the old application 22 is completed in S302, or when it is determined that the old application 22 is stored (S301: YES), the CPU 11 copies, from the designation information 50 stored in the new registry 231, information on a device for which "old application" is stored in the handover information 54, to the old registry 221 (S305). This designates this device as a communication target for the old application 22. S305 is an example of a designation process and a designation step. Note that, if information on this device is already stored in the old registry 221, the CPU 11 may skip S305.
[0051] A device for which "old application" is stored in the handover information 54 is a device that has been taken over from the old application 22 as a communication target of the new application 23 by the above-described handover process, and is a device that was originally a communication target for the old application 22. In other words, a device for which "old application" is stored in the handover information 54 is a compatible device that is compatible with the old application 22. The CPU 11 again designates a device for which "old application" is stored in the handover information 54 as a communication target for the old application 22 without having to determine whether the device is compatible with the old application 22.
[0052] Furthermore, the CPU 11 deletes the information of the device copied to the old registry 221 from the new registry 231 (S306). This excludes this device from the communication targets of the new application 23. S306 is an example of the exclusion process. The CPU 11 moves the designation information 50 stored in the new registry 231 to the old registry 221, so that the information of the communication target device can be easily taken over. Note that the designation information of the old registry 221 may or may not include the takeover information 54.
[0053] Then, the CPU 11 determines whether or not the designation information 50 of the new registry 231 includes a device for which the takeover information 54 is blank (S311). A device for which the takeover information 54 is blank is not a device inherited from the old application 22, but a new device newly designated by the new application 23. If it is determined that a new device exists (S311: YES), the CPU 11 determines whether or not the new device is compatible with the old application 22 (S312).
[0054] In S312, the CPU 11 may, for example, send a command of the old application 22 to the IP address of the device and make a determination based on the response, or the old application 22 may include compatibility information indicating whether the old application 22 is compatible with each device model, or the CPU 11 may inquire of the server 4 or the like about compatibility.
[0055] When it is determined that the new device is compatible with the old application 22 (S312: YES), the CPU 11 moves information about the new device from the new registry 231 to the old registry 221 (S315). As a result, the new device is also designated as a communication target of the old application 22. On the other hand, when it is determined that the new device is not compatible with the old application 22 (S312: NO), the CPU 11 displays on the user IF 13 a message that the new device is not compatible with the old application 22 and therefore will not be designated as a communication target of the old application 22 (S316). S316 is an example of a notification process. The CPU 11 may execute the processes of S311 to S316 before the processes of S305 to S306.
[0056] When all device information stored in the new registry 231 has been moved to the old registry 221, the CPU 11 operates the old application 22 and stops the new application 23 in a later procedure. However, if there is a non-compatible device that is incompatible with the old application 22, stopping the operation of the new application 23 makes it impossible for the CPU 11 to obtain status information of that device. Since the CPU 11 of this embodiment notifies the user that there is a non-compatible device, the user can recognize that the device is not compatible with the old application 22.
[0057] After S315 or S316, or when it is determined that there is no new device (S311: NO), the CPU 11 operates the old application 22 (S321), ends the switching process, and returns to the first process. For example, the CPU 11 changes the operation setting value in the old registry 221 from "OFF" to "ON". Alternatively, the CPU 11 may instruct the old application 22 to start operating. The CPU 11 may also set the old application 22 to be resident. Since the operation of the old application 22 is automatically started after the device information is transferred, the effort of the operation for executing the old application 22 can be reduced.
[0058] Returning to the description of the first process in Fig. 4, after the switching process in S131, the CPU 11 stops the residence of the new application 23, that is, stops the operation of the new application 23 (S132), and ends the first process. For example, the CPU 11 changes the operation setting value in the new registry 231 from "ON" to "OFF". The CPU 11 may uninstall the new application 23. S132 is an example of the stop process.
[0059] Since the information of the communication target devices has been moved to the old application 22 in the switching process and the old application 22 has been operated, it is not necessary to operate the new application 23. By stopping the operation of the new application 23, the processing load on the PC 1 can be reduced. If all communication target devices of the new application 23 have been moved, the operation of the new application 23 is automatically stopped, and if there is a device that could not be moved, the user may be asked whether or not to stop the operation of the new application 23 along with the notification of S316 in the switching process described above (FIG. 8).
[0060] After notifying an error in S125, if it is determined that a selection not to switch to the old application 22 has been accepted by accepting an operation on the "No" button 92 on the selection instruction accepting screen 90 (FIG. 7(B)) (S126: NO), the CPU 11 restarts the new application 23 (S123) and ends the first process. The CPU 11 may accept a user's selection as to whether or not to restart.
[0061] Furthermore, when a user instruction is received via the user IF 13 rather than an error occurring, and when it is determined that the received user instruction is a switching instruction (S105: switching instruction), the CPU 11 proceeds to S131 and executes the above-mentioned switching process. The switching instruction is an instruction to switch the application that monitors the device from the new application 23 to the old application 22. S105 in the case where a switching instruction is received via the user IF 13 is an example of a switching instruction receiving process. Furthermore, when a switching instruction is received by a user operation, this is an example of a case where a predetermined condition is satisfied.
[0062] Some users find the old application 22 easier to use than the new application 23 and may wish to return to the old application 22. The new application 23 of this embodiment is capable of receiving a switching instruction from the user, and when the switching instruction is received, executes the above-mentioned switching process, so that the communication target of the new application 23 can be taken over by the old application 22. Therefore, the user can use a program of his or her choice.
[0063] Furthermore, when it is determined that the user's instruction received via the user IF 13 is an instruction to uninstall the new application 23 (S105: uninstall instruction), the CPU 11 determines whether to switch to the old application 22 when uninstalling the new application 23 (S141). S105 in the case where an uninstall instruction is received via the user IF 13 is an example of an uninstall instruction receiving process. Furthermore, the case where an uninstall instruction is received by a user operation is an example of a case where a predetermined condition is satisfied.
[0064] In S141, the CPU 11, for example, causes the user IF 13 to display a display inquiring as to whether or not to switch to the old application 22 and monitor the device, and accepts the user's selection. That is, the CPU 11 accepts the selection of whether or not to continue monitoring with the old application 22 by transferring information of the device that is the communication target of the new application 23 to the old application 22. Then, when it is determined to switch to the old application 22 (S141: YES), the CPU 11 executes a switching process (S142). The switching process of S142 is the same process as the switching process of S131.
[0065] After S142, or when it is determined not to switch to the old application 22 (S141: NO), the CPU 11 uninstalls the new application 23 (S145) and ends the first process. S145 is an example of the uninstallation process. Before uninstallation, the CPU 11 may perform a final confirmation via the user IF 13 as to whether or not uninstallation is permitted.
[0066] Some users find the old application 22 easier to use than the new application 23 and may want to revert to the old application 22. Since uninstallation causes information about the communication targets of the new application 23 to be lost, by accepting an instruction to switch to the old application 22 before uninstallation, the CPU 11 can uninstall the new application 23 after transferring the communication targets of the new application 23 to the old application 22. Thus, the user can use a program of his or her choice.
[0067] As described above in detail, according to the new application 23, when a predetermined condition for changing a communication target is satisfied, the CPU 11 of the PC 1 designates, as a communication target of the old application 22, a device that is compatible with the old application 22, among devices designated as communication targets by the new application 23. This can save the user the trouble of designating a new device in the old application 22 when operating the old application 22.
[0068] It should be noted that the present embodiment is merely an example and does not limit the present invention in any way. Therefore, the technology disclosed in this specification can be naturally improved and modified in various ways without departing from the scope of the present invention. For example, instead of the PC1, a tablet computer or a smartphone may be used. In addition, the device to be communicated with connected to the PC1 is not limited to a printer, but may be a multifunction device, a copier, a fax machine, a scanner, etc., or multiple types of devices may be mixed.
[0069] Furthermore, the new application 23 and the old application 22 are not limited to a status monitor that causes the PC 1 to periodically acquire and display status information indicating the state of a device designated as a communication target. For example, the new application 23 and the old application 22 may be a program that acquires status information when a user's instruction is received, instead of periodically acquiring status information. The new application 23 and the old application 22 may be, for example, a printing program that causes the device to execute a printing process. The printing program acquires status information related to printing from the device, and if the acquired status information includes error information, it can display the error information. For example, the new application 23 and the old application 22 may not have a function to display status information.
[0070] Also, for example, new application 23 and old application 22 accept the designation of only one device as the device to be displayed on main screen 60 (FIG. 3(A)), but multiple devices may be designated as the display target devices. However, since displaying multiple devices tends to make the display cluttered, it is preferable to designate only one device.
[0071] In the first process (FIG. 4), the new application 23 is stopped from residing (S132) after the switching process (S131, FIG. 8), but it does not have to be stopped. For example, if a device to communicate with is not specified, the new application 23 does not actually communicate with the device, so it does not have to be stopped. In addition, in S316 of the switching process, if there is a device that cannot be handled by the old application 22, a notification to that effect is given, but it does not have to be given.
[0072] Also, for example, the handover information 54 of the designation information 50 (FIG. 2) may not be present. For example, in S305 of the switching process (FIG. 8), the CPU 11 may determine whether or not each device can be supported by the old application 22, similarly to S312, regardless of the presence or absence of the handover information 54.
[0073] In addition, for example, the new application 23 executes the takeover process when it receives a takeover instruction from the user, but for example, the takeover process may be executed automatically at the first startup. Also, for example, the installer of the new application 23 may execute the takeover process when installing the new application 23. In these cases, the new application 23 does not need to receive a takeover instruction.
[0074] Also, for example, when an uninstallation instruction is received, the new application 23 receives a user operation as to whether or not to switch to the old application 22, but this does not have to be the case. For example, if the CPU 11 has already received a switching instruction prior to the uninstallation instruction, it may skip S141 and S142 and perform uninstallation. Also, if the designation information 50 is not stored in the new registry 231 when an uninstallation instruction is received, it may skip S141 and S142 and perform uninstallation.
[0075] In addition, in any of the flowcharts disclosed in the embodiments, the order of execution of multiple processes in any of the steps can be arbitrarily changed or the processes can be executed in parallel as long as no contradiction occurs in the process content.
[0076] The processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as ASIC, or a combination of these. The processes disclosed in the embodiments may be realized in various forms, such as a recording medium having a program for executing the processes recorded thereon, or a method. [Explanation of symbols]
[0077] 1 PC 3 Devices 31, 32, 33, 34 Printers 13 User Interface
Claims
1. A first program that is executable on an information processing device and that is capable of causing the information processing device to acquire device information from a device designated as a communication target, The information processing device includes: when a predetermined condition for changing a communication target is satisfied, a designation process is executed for designating, as a communication target of the second program, a compatible device that is a device compatible with the second program and that is different from the first program among devices designated as communication targets in the first program, and that can cause the information processing device to acquire device information from the device designated as a communication target in the second program; The first program is configured as follows.
2. The first program according to claim 1, The information processing device includes: After executing the specified process, starting the operation of the second program. The first program is configured as follows.
3. The first program according to claim 1, The information processing device includes: executing an exclusion process for excluding the corresponding device from a communication target of the first program when the designation process is executed; The first program is configured as follows.
4. In the first program according to claim 3, In the exclusion process, deleting the designation information of the corresponding device stored in a first memory area, which is a memory area for the first program of the information processing device; In the designation process, writing designation information for the corresponding device into a second memory area, which is a memory area for the second program of the information processing device; the first program and the second program cause the information processing device to acquire the device information from a device based on the device designation information stored in a memory area for each program; The first program is configured as follows.
5. In the first program according to claim 3, The information processing device includes: After the specified process is executed, a stop process is executed to stop the operation of the first program. The first program is configured as follows.
6. In the first program according to claim 5, The information processing device includes: when the predetermined condition is satisfied, if there is a non-compatible device that is incompatible with the second program among devices specified in the first program as communication targets, a notification process is executed to notify that the non-compatible device will not be specified as a communication target of the second program. The first program is configured as follows.
7. The first program according to claim 1, the predetermined condition being that an error other than a communication error has occurred based on the processing of the first program; The first program is configured as follows.
8. The first program according to claim 7, The information processing device includes: executing a selection receiving process for receiving, using a user interface of the information processing device, a selection of whether or not to switch to the second program before executing the designated process when the predetermined condition is satisfied; when the selection of switching to the second program is accepted in the selection acceptance process, the designated process is executed, and when the selection of not switching to the second program is accepted in the selection acceptance process, the designated process is not executed. The first program is configured as follows.
9. The first program according to claim 1, The information processing device includes: A switching instruction receiving process can be executed to receive a switching instruction to switch to the second program using a user interface of the information processing device, The predetermined condition is that the switching instruction has been accepted in the switching instruction acceptance process. The first program is configured as follows.
10. The first program according to claim 1, The information processing device includes: an uninstallation instruction receiving process for receiving an uninstallation instruction for uninstalling the first program using a user interface of the information processing device; an uninstallation process for uninstalling the first program when the uninstallation instruction is received in the uninstallation instruction receiving process; It is possible to execute the predetermined condition being that the uninstallation instruction has been received in the uninstallation instruction receiving process, The first program is configured as follows.
11. The first program according to claim 1, The information processing device includes: if the second program is not installed in the information processing device when the predetermined condition is satisfied, an installation process for installing the second program is executed before the designation process is executed. The first program is configured as follows.
12. The first program according to claim 1, the information processing device stores, in a first memory area that is a memory area for the first program, designation information of a device designated as a communication target of the first program in association with designation history information indicating whether or not the device has been designated as a communication target by the second program; In the designation process, designating, as the corresponding device, a device associated with the designation history information indicating that the device has been designated as a communication target in the second program among devices designated in the first program as a communication target, as a communication target of the second program; The first program is configured as follows.
13. The first program according to claim 12, The information processing device includes: a takeover instruction receiving process is capable of receiving, using a user interface of the information processing device, a takeover instruction to take over a communication target device designated in the second program as a communication target of the first program, The information processing device further includes: execute a takeover process, when the takeover instruction is received in the takeover instruction receiving process, for storing, in the first memory area, the designation information of a device that is compatible with the first program among devices designated as communication targets in the second program, in association with the designation history information indicating that the device has been designated as a communication target in the second program; The first program is configured as follows.
14. The first program according to claim 12, In the designation process, determining whether or not the second program can handle a device that is not associated with the designation history information indicating that the device has been designated as a communication target by the second program among devices designated as communication targets by the first program, and if the device can be handled, designating the device as the compatible device as a communication target of the second program; The first program is configured as follows.
15. The first program according to claim 1, the first program and the second program are programs for monitoring a designated printer by having the information processing device periodically acquire status information, which is device information, from the printer, which is a device designated as a communication target by each of the first and second programs; In the designation process, among the printers to be communicated designated in the first program, the corresponding device which is a printer compatible with the second program is designated as a communication target of the second program. The first program is configured as follows.
16. A method for specifying a device as a communication target of a second program different from a first program in an information processing device having a first program installed, the first program being a program capable of causing the information processing device to obtain device information from the device specified in the first program as a communication target, and the second program being a program capable of causing the information processing device to obtain device information from the device specified in the second program as a communication target, a designation step of designating, as a communication target of the second program, a compatible device that is compatible with the second program among devices designated in the first program as communication targets when a predetermined condition for changing the communication target is satisfied; 2. A method for specifying a device, comprising:
17. The information processing device includes: A first program and a second program different from the first program are executable, the first program being a program capable of causing the information processing device to obtain device information from a device designated in the first program as a communication target, and the second program being a program capable of causing the information processing device to obtain device information from a device designated in the second program as a communication target, The information processing device further comprises: executing a designation process for designating, as a communication target of the second program, a compatible device that is compatible with the second program, among devices designated in the first program as communication targets, when a predetermined condition for changing a communication target is satisfied during the operation of the first program; The information processing device is configured as follows.
Citation Information
Patent Citations
Information processing device and program
JP2016207138A