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

Figure 2025041333000001_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 capable of acquiring information from a device, and a new program is to be run on an information processing device in which one of the programs is already operational, it is desirable to appropriately specify for each program the device with which it is to communicate. Patent Document 1 does not disclose a process for specifying a device with which it is to communicate in relation to another program when a new program having a function of acquiring information from a device is to be run, and there is room for improvement. [Means for solving the problem]
[0005] The installation program developed for the purpose of solving this problem is an installation program that is executable on an information processing device and is capable of installing a first program on the information processing device, wherein the first program is a program capable of causing the information processing device to obtain device information from a device specified in the first program as a communication target, and when a second program that is a program different from the first program and capable of causing the information processing device to obtain device information from a device specified in the second program as a communication target is installed on the information processing device, the installation program is configured to execute a first designation process that designates, as a communication target for the first program, a compatible device that is a device compatible with the first program, among the devices specified as communication targets in the second program.
[0006] According to the installation program disclosed in this specification, when an information processing device installs a first program, if a second program has already been installed, among devices designated as communication targets in the second program, devices that are compatible with the first program are designated as communication targets for the first program. This makes it possible to eliminate the need to newly designate communication target devices in the first program.
[0007] Furthermore, a first program made for the purpose of solving this problem is a first program that can be executed by an information processing device and is capable of causing the information processing device to obtain device information from a device designated as a communication target, and is capable of causing the information processing device to execute a judgment process to determine whether a condition for inheriting a device as a communication target designated by the second program, which is a second program different from the first program and is capable of causing the information processing device to obtain device information from a device designated by the second program as a communication target, is satisfied as a communication target of the first program, and the information processing device is further configured to, when it is determined in the judgment process that the condition is satisfied, execute a second designation process to designate, as a communication target of the first program, a compatible device that is a device compatible with the first program, among the devices designated as communication targets by the second program, as a communication target of the first program.
[0008] According to the first program disclosed in this specification, if the information processing device satisfies the conditions for inheriting the communication target device designated in the second program, the information processing device designates, among the devices designated as communication targets in the second program, devices that are compatible with the first program as communication targets for the first program. This makes it possible to eliminate the need to specify the communication target device.
[0009] 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
[0010] The technology disclosed in this specification realizes a technology that is a program capable of obtaining information from a specified device, and that appropriately specifies a device to communicate with in relation to another program. [Brief description of the drawings]
[0011] [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 the procedure of an installation process. [Diagram 5] 13 is a flowchart showing a procedure for a takeover process. [Figure 6] FIG. 11 is an explanatory diagram showing an example of a device selection screen. [Figure 7] 13 is a flowchart showing a procedure for information transfer processing. [Figure 8] 13 is a flowchart showing a procedure of a continuation process. [Figure 9] 13 is a flowchart showing a procedure for a new application startup process. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A first embodiment will be described in detail below with reference to the accompanying drawings. This specification discloses a program executed on a personal computer (hereinafter, referred to as a "PC").
[0013] 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.
[0014] 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.
[0015] 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.
[0016] 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.
[0017] As shown in Fig. 1, memory 12 of PC 1 stores an operating system (hereinafter referred to as "OS") 21, an old application 22, and an installer 24 for installing a new application 23. Note that new application 23, indicated by a dashed line in Fig. 1, is stored in memory 12 once installation by installer 24 is complete.
[0018] The old application 22, the new application 23, and the installer 24 are programs executable on 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 installer 24 is an example of an installation program. The OS 21 is, for example, Windows (registered trademark), macOS (registered trademark), Linux (registered trademark), iOS (registered trademark), or Android (registered trademark).
[0019] 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."
[0020] 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.
[0021] 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.
[0022] 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.
[0023] 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.
[0024] That is, 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. The old registry 221 is a memory area for the old application 22 and is an example of a second memory area.
[0025] 2, the old registry 221 stores designation information 50, which is information on the devices 3 to be communication targets and display targets by the old application 22. The designation information 50 includes, for example, a device name 51, an IP address 52, and a display flag 53. The device name 51 is information indicating each device 3 to be communication targets by the old application 22. The device name 51 is, for example, a 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 of each device 3. Note that the old application 22 and the new application 23 can designate multiple devices as communication targets. 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 of the old application 22.
[0026] The display flag 53 of the designation information 50 is information for setting whether or not each device to be communicated with is to be displayed by the old application 22. 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 old application 22. The display flag 53 is an example of a display setting. For example, as shown in FIG. 3(A), the main screen 60 is a screen on which status information is displayed. The main screen 60 is an example of display information.
[0027] The main screen 60 is displayed by the user operating the icon of the old application 22 or the new application 23. The old application 22 or 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 when the main screen 60 is displayed, only the information of the device set as the display target is displayed first. 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.
[0028] 3A, 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 and 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.
[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 installation process based on the installer 24 of the first embodiment will be described with reference to the flowchart in Fig. 4. The installation process is executed by the CPU 11 of the PC 1 upon receipt of an instruction to install the new application 23, i.e., an instruction to execute the installer 24. Note that each process and each step in the following description basically indicates processing by the CPU 11 according to instructions written in a program.
[0031] The CPU 11 creates a new registry 231 for the new application 23 in the memory 12 (S101). Creating a registry can also be called creating a registry key. The new registry 231 is a memory area that is used by the new application 23 after installation is complete. For example, if information similar to the above-mentioned specification information 50 (FIG. 2) is written in the new registry 231, the new application 23 can cause the PC 1 to obtain status information from the device 3 with which it is to communicate, based on the information in the new registry 231.
[0032] Then, the CPU 11 determines whether the old application 22 is stored in the memory 12 (S103). If it is determined that the old application 22 is not stored in the memory 12 (S103: NO), for example, if the old application 22 has been uninstalled, the CPU 11 accepts a user's selection of a device 3 to be a communication target and a display target of the new application 23 via the user IF 13 (S111). S111 is an example of a communication device selection process.
[0033] Based on the user's selection accepted in S111, the CPU 11 writes information about the device 3 to be communicated with and displayed by the new application 23 to the new registry 231 prepared in S101 (S112). In this case, designation information 50 that designates the device is written to the new registry 231 based on the user's selection.
[0034] After writing the designation information 50 to the new registry 231, the CPU 11 installs the new application 23 (S131). As a result, the new application 23 is incorporated into the OS 21. After the installation, the CPU 11 may set the new application 23 to be resident and start monitoring each device to be monitored. After S131, the CPU 11 ends the installation process. Note that if the old application 22 is not stored, the CPU 11 may accept the designation of a device to be communicated with after the new application 23 is installed.
[0035] On the other hand, when it is determined that the old application 22 is stored in the memory 12 (S103: YES), the CPU 11 executes a takeover process (S121). The takeover process is a process for taking over a device that is a communication target of the old application 22 as a communication target of the new application 23. The procedure of the takeover process will be described with reference to the flowchart of FIG.
[0036] In the takeover process, the CPU 11 accepts the selection of a device to be taken over from the old application 22 (S201). S201 is an example of a designated device selection process. The CPU 11 causes the user IF 13 to display a device selection screen 70 as shown in FIG. 6, for example, and accepts the selection of a device to be taken over by a user instruction.
[0037] The device selection screen 70 includes, for example, a list 71 of devices that are communication targets in the old application 22, a "Take over all" button 72, a "Take over selected device" button 73, and a "Do not take over" button 74. When the CPU 11 accepts an operation on the button 72, it sets all devices included in the list 71 as targets for transfer. When the CPU 11 accepts an operation on the button 74, it does not set any devices as targets for transfer. When the CPU 11 accepts an operation on the button 73, it sets the devices selected in the list 71 (only printer A in the example of FIG. 6) as targets for transfer. Since the selection of the devices to be taken over is accepted in advance, it is possible to customize the communication targets of the new application 23 and the communication targets of the old application 22 according to the user's preference.
[0038] Then, CPU 11 judges whether or not there is a device selected by the user as a target for handover (S205). If it is judged that one or more devices have been selected as a target for handover (S205: Yes), CPU 11 executes information transfer processing for each selected device (S207). The information transfer processing is processing for transferring information of a target device. The procedure of the information transfer processing will be described with reference to the flowchart of FIG. 7.
[0039] In the information transfer process, the CPU 11 acquires information on the target device, such as at least the IP address, from the old registry 221 (S301). Then, the CPU 11 inquires of the target device whether it supports the new application 23 (S302). The CPU 11 transmits a command to the acquired IP address via, for example, the communication IF 14, to check whether the new application 23 is compatible with the target device. By directly inquiring of the target device whether it supports the new application 23, the installer 24 does not need to have compatibility information indicating whether each device model supports the new application, nor does it need to inquire of the server 4 or the like about whether each model supports the new application.
[0040] The CPU 11 determines whether the target device is compatible with the new application 23 based on the response result to the command sent in S302 (S305). For example, when the CPU 11 receives an appropriate response from the target device, the CPU 11 determines that the target device is compatible with the new application 23. In this case, the target device is an example of a compatible device. Then, when it is determined that the target device is compatible (S305: YES), the CPU 11 writes information about the target device in the new registry 231 (S307). S307 is an example of a first designation process and a first designation step.
[0041] Specifically, the CPU 11 copies information on the device that is the target of the current information transfer process, from among the designation information 50 stored in the old registry 221, to the new registry 231. By writing the information to the new registry 231, the target device is designated as a communication target by the new application 23. By writing the information stored in the old registry 221 for the old application 22 to the new registry 231 for the new application 23, the information designating the communication target can be easily inherited.
[0042] When the copy is completed, the CPU 11 deletes the information of the target device from the old registry 221 (S308). As a result, the target device is excluded from communication targets of the old application 22. S308 is an example of the exclusion process. After S308, the CPU 11 ends the information transfer process and returns to the handover process.
[0043] On the other hand, if it is determined that the new application 23 is not compatible (S305: NO), the CPU 11 does not execute S307 and S308, does not move the information of the target device, ends the information movement process, and returns to the handover process. For example, when the CPU 11 receives a response other than an appropriate response from the target device, or when it does not receive a response from the target device within a predetermined time, the CPU 11 determines that the target device is not compatible with the new application 23. Since the CPU 11 does not write information of a device that is not compatible with the new application 23 to the new registry 231, the possibility of an error occurring when the new application 23 is executed can be reduced.
[0044] Returning to the explanation of the handover process in Fig. 5, after executing the information transfer process (S207) for the target device, CPU 11 judges whether or not the information transfer process has been executed for all devices for which the user's selection was accepted in S205 (S208). If it is determined that there is a device among the devices selected by the user for which the information transfer process has not been executed (S208: NO), CPU 11 executes the information transfer process again for that device (S207).
[0045] When it is determined that the information transfer process has been executed for all the selected devices (S208: YES), or when it is determined that no device to be the transfer target has been selected (S205: NO), the CPU 11 determines whether or not there is a new device to be a communication target of the new application 23 (S211). S211 is an example of a communication device selection process. For example, the CPU 11 can receive an instruction via the user IF 13 to add a device that is not a communication target of the old application 22 as a communication target of the new application 23. Alternatively, the CPU 11 may search for connectable devices via the communication IF 14 and determine whether or not a device that is not a communication target of the old application 22 has been searched for.
[0046] When it is determined that there is a new device (S211: YES), the CPU 11 determines whether or not the new device is compatible with the new application 23 (S212). S212 is the same process as S305 in the information transfer process (FIG. 7). Then, when it is determined that the new device is compatible with the new application 23 (S212: YES), the CPU 11 adds information about the new device to the new registry 231 (S213). Note that when the new device is not compatible with the new application 23, the CPU 11 may inquire of the user as to whether or not the new device is to be a communication target or a display target of the old application 22.
[0047] Furthermore, the CPU 11 sets the new device as a device to be displayed (S214). S214 is an example of a second setting process. When a device that is not a communication target in the old application 22 is selected as a communication target for the new application 23, the device is likely to be the device that has attracted the most attention. The CPU 11 automatically sets the new device as a display target, which makes the new application 23 easy to use. If the CPU 11 has already inherited information on a device that was a display target in the old application 22, the CPU 11 removes the device from the display targets and changes the device to be displayed.
[0048] On the other hand, if it is determined that there is no new device (S211: NO) or if it is determined that the new device is not compatible with the new application 23 (S212: NO), the CPU 11 determines whether or not information about the device that was to be displayed in the old application 22 has been carried over to the new registry 231 (S216). For example, the CPU 11 determines whether or not information about a printer whose display flag 53 was "TRUE" in the designation information 50 of the old registry 221 is included in the designation information written to the new registry 231.
[0049] When it is determined that the information on the display target devices in the old application 22 has been carried over (S216: YES), the CPU 11 sets the display target devices of the old application 22 as display target devices of the new application 23 (S217). S217 is an example of a first setting process. That is, the new application 23 sets the devices that were set as display targets in the old application 22 as display targets on the main screen 60 (FIG. 3(A)). By automatically carrying over the settings of the display target devices, it is possible to save the user the trouble of selecting the display targets.
[0050] When it is determined that the display target of the old application 22 has not been carried over (S216: NO), the CPU 11 accepts a user's selection of a device to be a display target among devices to be communication targets of the new application 23 (S218). Note that when there is no communication target device carried over from the old application 22 and no new device, that is, when there is no device to be a communication target of the new application 23, the CPU 11 skips S218. After any of S214, S217, and S218, the CPU 11 ends the carryover process and returns to the installation process (FIG. 4).
[0051] Returning to the description of the installation process in Fig. 4, after the takeover process in S121, the CPU 11 executes the continuation process (S122). The continuation process is a process that includes a determination as to whether or not to continue the operation of the old application 22 after the takeover. The procedure of the continuation process will be described with reference to the flowchart in Fig. 8.
[0052] The CPU 11 determines whether or not all devices that were communication targets of the old application 22 have been handed over to the new application 23 as a result of the handover process (S401). For example, when information on devices that were communication targets does not remain in the old registry 221 after the handover process is completed, the CPU 11 determines that all devices have been handed over.
[0053] When it is determined that all devices have been taken over (S401: YES), the CPU 11 causes the user IF 13 to display a notification screen indicating that the takeover of all devices has been completed (S402). S402 is an example of notification processing. By notifying the user that the takeover has been completed, the user can recognize that all devices that were communication targets of the old application 22 will be communication targets of the new application 23 from now on. Furthermore, the CPU 11 notifies the user that the old application 22 will be stopped (S403). Note that the CPU 11 may give the notification of S403 together with the notification of S402.
[0054] Then, the CPU 11 stops the operation of the old application 22 (S404). S404 is an example of the stop process. When all devices that were communication targets of the old application 22 have been handed over to the new application 23, it is not necessary to continue the operation of the old application 22.
[0055] In S404, the CPU 11, for example, cancels the resident setting of the old application 22. The CPU 11, for example, changes the operation setting value in the old registry 221 from "ON" to "OFF". The CPU 11 may also instruct the old application 22 to stop. The CPU 11 may also uninstall the old application 22. If the resident setting is cancelled, the processing load for stopping the operation is smaller than when the old application 22 is uninstalled. Also, if the old application 22 becomes necessary again, the operation can be immediately resumed. On the other hand, if the old application 22 is uninstalled, the load on the memory 12 of the PC 1 is smaller than when the old application 22 is left without being uninstalled.
[0056] On the other hand, when it is determined that not all devices have been taken over (S401: NO), that is, when it is determined that there is at least one device that has not been taken over, the CPU 11 notifies information that distinguishes between the devices that have been taken over and the devices that have not been taken over (S405). S405 is an example of notification processing. For example, the CPU 11 may cause the user IF 13 to display a list of both the devices that have been taken over and the devices that have not been taken over, or may cause the user IF 13 to display only a list of the devices that have been taken over, or may cause the user IF 13 to display only a list of the devices that have not been taken over.
[0057] Furthermore, the CPU 11 determines whether to continue the processing by the old application 22 (S406). For example, the CPU 11 inquires of the user via the user IF 13 to receive a selection of whether to continue monitoring the devices that have not been taken over by the old application 22. If it is determined that monitoring by the old application 22 will not be continued (S406: NO), the CPU 11 stops the operation of the old application 22 (S404). If a user's selection to the effect that monitoring of the devices that have not been taken over is not necessary is received, there is no need to continue the operation of the old application 22. By stopping unnecessary operations of the old application 22, the processing load of the PC 1 is reduced.
[0058] After S404, or when it is determined that monitoring by the old application 22 is to be continued (S406: YES), the CPU 11 ends the continuation process and returns to the installation process (FIG. 4). When the selection to continue monitoring by the old application 22 is accepted, the CPU 11 does not stop the operation of the old application 22. Then, even after the installation of the new application 23, the CPU 11 continues the operation of the old application 22, and causes the old application 22 to monitor devices that have not been handed over to the new application 23.
[0059] Returning to the explanation of the installation process in Fig. 4, after the continuation process of S122, the CPU 11 installs the new application 23 (S131). Then, the CPU 11 sets the installed new application 23 to be resident. After the installation is completed, the CPU 11 ends the installation process.
[0060] When monitoring by the old application 22 is to be continued (when YES is selected in S406 of the continuation process), the CPU 11 may install the new application 23 in S131 so as to be able to coexist with the old application 22. In this manner, the old application 22 may continue to monitor a device that is not monitored by the new application 23. When the old application 22 and the new application 23 are to coexist, the CPU 11 may be able to accept a user's selection as to which of the old application 22 or the new application 23 is to be set as resident.
[0061] As described above in detail, according to the installer 24 of the first embodiment, when the CPU 11 of the PC 1 installs the new application 23, if the old application 22 is already installed, the CPU 11 designates, as communication targets for the new application 23, devices that are compatible with the new application 23, among the devices designated as communication targets in the old application 22. This can save the user the trouble of designating, for the new application 23, information on devices that were monitored by the old application 22.
[0062] Next, the second embodiment will be described. In the second embodiment, the new application 23 causes the PC 1 to execute a process of inheriting information of a device to be communicated with. In this respect, it differs from the first embodiment in which the installer 24 of the new application 23 causes the PC 1 to execute this process. The procedure of the new application launch process, which is a process based on the new application 23 in the second embodiment, will be described with reference to the flowchart of FIG. The new application launch process is executed by the CPU 11 of the PC 1 when an execution instruction for the new application 23 is received after the new application 23 is installed.
[0063] In the new application startup process, CPU 11 determines whether this is the first startup after installation (S501). S501 is an example of a judgment process and judgment step. The first startup is an example of satisfying the condition for inheriting the communication target device. If it is determined that this is the first startup (S501: YES), CPU 11 determines whether designation information indicating the communication target device is stored in new registry 231 (S502).
[0064] When it is determined that the device specification information is stored in the new registry 231 (S502: YES), the CPU 11 starts monitoring the device to be communicated with based on the information written in the new registry 231 (S521), and ends the new application startup process. If it is the first startup and the information of the device to be communicated with is stored in the new registry 231, there is a high possibility that the handover of the device information has been completed by the process of the installer 24 of the first form, for example.
[0065] On the other hand, if it is determined that the new registry 231 does not store information on the device to be communicated with (S502: NO), the CPU 11 determines whether the old application 22 is stored in the memory 12 (S505). If the new registry 231 is not provided or if the new registry 231 does not store the specified information, the takeover is not complete. If the old application 22 exists, the new application 23 can take over the information of the old application 22.
[0066] When it is determined that the old application 22 is not stored in the memory 12 (S505: NO), the CPU 11 accepts manual selection of a device (S506). For example, when the new application 23 has been overwritten onto the old application 22 or when the old application 22 has been uninstalled, the new application 23 cannot inherit the information of the old application 22. When the old application 22 does not exist, the CPU 11 accepts, through a user operation, designation of a communication target device or a display target device for the new application 23, and writes it into the new registry 231. S506 is the same process as S111 and S112 of the installation process of the first embodiment (see FIG. 4).
[0067] Then, the CPU 11 proceeds to S521 and starts monitoring the device for which the selection has been accepted as a communication target. Note that the new application 23 may further receive an instruction for resident setting by a user operation, and may operate based on the received instruction.
[0068] On the other hand, if it is determined that this is not the first startup (S501: NO), the CPU 11 determines whether or not a takeover instruction has been received through a user operation (S507). S507 is an example of a determination process and a determination step. The takeover instruction is an instruction for the new application 23 to take over information on a device that is a communication target of the old application 22. The receipt of the takeover instruction is an example of satisfying the condition for taking over the device that is a communication target.
[0069] When it is determined that the takeover instruction has been received (S507: YES), the CPU 11 determines whether or not the old application 22 is stored in the memory 12 (S508). S508 is the same process as S505. When it is determined that the old application 22 is not stored in the memory 12 (S508: NO), the CPU 11 displays an error (S509). When the takeover instruction has been received but there is no old application 22 to take over from, the CPU 11 cannot take over the device information.
[0070] After S509, or when it is determined that the takeover instruction has not been received (S507: NO), the CPU 11 proceeds to S521 and starts monitoring the device to be communicated with. Note that, when information on the device to be communicated with has not been written in the new registry 231, the CPU 11 may stop the new application 23 or may receive a manual selection.
[0071] When the application is started for the first time or when a takeover instruction is received, and when it is determined that the old application 22 is stored in the memory 12 (S505: YES, S508: YES), the CPU 11 executes a takeover process (S511) and a continuation process (S512). The takeover process is the same as the takeover process of the first embodiment (FIG. 5). The continuation process is the same as the continuation process of the first embodiment (FIG. 8).
[0072] By executing the same handover process as in the first embodiment, the CPU 11 can hand over information on a device that is a communication target of the old application 22 in the old registry 221 for the old application 22 to the new registry 231 for the new application 23. In particular, in the information transfer process (FIG. 7) executed in the handover process, if the device to be transferred is compatible with the new application 23, the CPU 11 writes information on the device to the new registry 231. S307 of the information transfer process executed based on the new application 23 is an example of a second designation process and a second designation step.
[0073] After the takeover process (S511) and the continuation process (S512), the CPU 11 starts monitoring the device with which the new application 23 communicates (S521). The new application 23 can cause the PC 1 to monitor the device with which the new application 23 communicates based on the device information taken over from the old application 22.
[0074] As described above in detail, according to the new application 23 of the second embodiment, when the condition for inheriting the communication target devices specified in the old application 22 as communication target devices of the new application 23 is satisfied, the CPU 11 of the PC 1 specifies, as communication targets of the new application 23, devices that are compatible with the new application 23, among the devices specified as communication targets in the old application 22. This can save the user the trouble of specifying, in the new application 23, information on devices that were monitored by the old application 22.
[0075] 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.
[0076] 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.
[0077] 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.
[0078] In the first and second embodiments, the CPU 11 transmits a command to the target device and determines whether the target device supports the new application 23 based on the response result, but this is not limiting. For example, the installer 24 or the new application 23 may have information on whether the application is compatible with each device model, or may determine whether the application is compatible by inquiring of the server 4 or the like.
[0079] In the first and second embodiments, the operation of the old application 22 is stopped when all devices are taken over, but it is not necessary to stop it. If a communication target device is not set, the old application 22 does not communicate with the device. In addition, if a communication target device for the old application 22 remains, a user operation as to whether or not to stop the old application 22 is accepted, but the old application 22 may be stopped without accepting a user operation.
[0080] In the handover process of the first and second forms (FIG. 5), the selection of the device to take over information is accepted by the user (S205), but this need not be accepted. That is, all devices that are compatible with the new application 23 may be automatically taken over. Also, the decision in S211 and the processes in S212 to S214 in the handover process may not be necessary. That is, the procedure for adding a new device may be executed at a different timing from the device handover procedure.
[0081] In the continuation process of the first and second forms (FIG. 8), the notifications of S402, S403, and S405 may be omitted. However, if the notifications are given, it is preferable because it is easier for the user to understand the situation. In addition, in S406 of the continuation process, the user is asked whether or not to continue the old application 22, but if there is one or more devices that are not to be taken over, the operation of the old application 22 may not be stopped without asking the user.
[0082] Also, steps S111 and S112 of the installation process of the first embodiment may be omitted. In other words, if the old application 22 is not stored in the memory 12, the installer 24 may simply install the new application 23 without accepting the selection of a device.
[0083] 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.
[0084] 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]
[0085] 1 PC 3 Devices 31, 32, 33, 34 Printers 13 User Interface
Claims
1. an installation program executable on an information processing device and capable of installing a first program on the information processing device, 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; The information processing device includes: a second program different from the first program, the second program being capable of causing the information processing device to acquire device information from a device specified in the second program as a communication target, when the second program is installed in the information processing device, the first designation process being executed to designate, as a communication target of the first program, a corresponding device that is compatible with the first program, among the devices specified as communication targets in the second program; The installation program is configured to:
2. 2. The installation 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 second program when the first designation process is executed; The installation program is configured to:
3. 3. The installation program according to claim 2, In the first designation process, writing designation information for the corresponding device into a first memory area, which is a memory area for the first program of the information processing device; In the exclusion process, deleting the designation information of the corresponding device stored in 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 are programs for causing 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 installation program is configured to:
4. 3. The installation program according to claim 2, The information processing device includes: executing a stop process for stopping the operation of the second program when all of the devices to be communicated with designated in the second program are the corresponding devices; The installation program is configured to:
5. The installation program according to claim 4, In the stop process, canceling the resident setting of the second program to stop the operation of the second program; The installation program is configured to:
6. The installation program according to claim 4, In the stop process, uninstalling the second program to stop the operation of the second program; The installation program is configured to:
7. The installation program according to claim 4, The information processing device includes: when at least one of the devices to be communicated with, which is specified in the second program, is not the corresponding device, the stop process is not executed and the operation of the second program is continued; The installation program is configured to:
8. 3. The installation program according to claim 2, The information processing device includes: executing a designated device selection process for selecting a device to be a target of the first designation process from among devices to be communication targets designated in the second program when the second program is installed; Among the devices selected in the designated device selection process, the corresponding device is designated as a communication target of the first program in the first designation process, and is excluded from a communication target of the second program in the exclusion process. The installation program is configured to:
9. 3. The installation program according to claim 2, The information processing device includes: executing a notification process for notifying, using a user interface of the information processing device, that a program communicating with the device has been changed to the first program when at least one of the devices that are communication targets designated by the second program has been designated as a communication target of the first program in the first designation process and has been excluded from the communication targets of the second program in the exclusion process; The installation program is configured to:
10. 2. The installation program according to claim 1, The information processing device includes: transmitting a command for confirming whether or not the first program is supported for each communication target device specified in the second program, and determining whether or not the first program is supported based on a response result to the command; The installation program is configured to:
11. 2. The installation 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 first designation process, among the printers to be communicated with designated in the second program, the corresponding device that is a printer compatible with the first program is designated as a communication target of the first program. The installation program is configured to:
12. The installation program according to claim 11, the first program and the second program are capable of setting a display for a designated communication target printer to indicate whether or not the designated communication target printer is to be displayed, and if the designated communication target printer is a display target printer, display information based on the acquired status information is displayed on the information processing device more frequently than if the designated communication target printer is a non-display target printer; The information processing device includes: executing a first setting process for setting the corresponding device as a display target also in the first program when the corresponding device is set as the display target in the second program; The installation program is configured to:
13. 13. The installation program according to claim 12, The information processing device includes: executing a communication device selection process for receiving a selection of a device to be communicated with when the first program is installed; The information processing device further includes: when a device not designated in the second program is selected in the communication device selection process, a second setting process is executed to set the selected device as a display target. The installation program is configured to:
14. 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: a second program different from the first program as a communication target of the first program, the second program being capable of causing the information processing device to acquire device information from a device designated in the second program as a communication target, and capable of executing a determination process for determining whether or not a condition for inheriting the device designated in the second program as a communication target is satisfied; The information processing device further includes: when it is determined in the determination process that the condition is satisfied, a second designation process is executed to designate, as a communication target of the first program, a compatible device that is compatible with the first program, among devices designated as communication targets in the second program; The first program is configured as follows.
15. A method for designating a device as a communication target of a first program in an information processing device, the first program being a program capable of causing the information processing device to obtain device information from the device designated by the first program as a communication target, a first designation step of designating, when a second program, which is a program different from the first program and capable of causing the information processing device to acquire device information from a device designated in the second program as a communication target, among devices designated in the second program as communication targets, a corresponding device which is a device compatible with the first program, as a communication target of the first program, when the second program is installed in the information processing device; 2. A method for specifying a device, comprising:
16. A method for specifying a device as a communication target of a first program in an information processing device having a first program installed therein, the first program being a program capable of causing the information processing device to obtain device information from a device specified by the first program as a communication target, a determination step of determining whether a second program different from the first program satisfies a condition for inheriting a communication target device designated by the second program as a communication target, the second program being capable of causing the information processing device to acquire device information from the device designated by the second program as a communication target; moreover, a second designation step of designating, when it is determined in the determination step that the condition is satisfied, a compatible device that is compatible with the first program, among devices designated as communication targets in the second program, as a communication target of the first program; 2. A method for specifying a device, comprising:
17. an information processing device capable of installing a first program, the first program being a program capable of causing the information processing device to acquire device information from a device designated in the first program as a communication target; The information processing device further comprises: when installing the first program, if a second program, which is a program different from the first program and is capable of causing the information processing device to acquire device information from a device designated in the second program as a communication target, is installed, a first designation process is executed to designate, as a communication target of the first program, a compatible device that is a device compatible with the first program, among the devices designated as communication targets in the second program; The information processing device is configured as follows.
18. an information processing device capable of executing a first program, 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; The information processing device further comprises: a second program different from the first program as a communication target of the first program, capable of causing the information processing device to acquire device information from a device designated in the second program as a communication target, and capable of executing a determination process for determining whether or not a condition for inheriting the device designated in the second program as a communication target is satisfied; The information processing device further includes: When it is determined in the determination process that the condition is satisfied, a second designation process is executed to designate, as a communication target of the first program, a compatible device that is compatible with the first program, among the devices designated as communication targets in the second program. The information processing device is configured as follows.
Citation Information
Patent Citations
Information processing device and program
JP2016207138A