Information processing program and information processing apparatus

The program registers a virtual printing device and performs initial settings without a connected real device, facilitating convenient printing operations by outputting capability information and transmitting print data when the device is connected.

JP2025145172APending Publication Date: 2025-10-03BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024045218
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-21
Publication Date
2025-10-03

AI Technical Summary

Technical Problem

Conventional technologies require a real printing device to be connected for initial settings, making it inconvenient to register a virtual printing device and perform printing operations.

Method used

An information processing program that allows registering a virtual printing device in the OS standard printing software without a connected real printing device, by outputting capability information and performing initial settings, and subsequently transmitting print data when the device is connected.

Benefits of technology

Enables convenient initial settings and printing operations even when the real printing device is not initially connected, improving user experience and efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025145172000001_ABST
    Figure 2025145172000001_ABST
Patent Text Reader

Abstract

To provide an information processing program and an information processing apparatus, even in a state where an actual printer is not connected, which beforehand allows the register of a virtual printer and the execution of initial setting or the like, and allows a printing operation to execute when the actual printer is connected after that.SOLUTION: When a printer 200 is not yet connected to a terminal device 100, a printer application 170 allows a processor 110 of the terminal device 100 to execute: a step S30 in which the printer application 170 is registered for a CUPS160 as a virtual printer corresponding to the printer 200 by responding to the search of the printer 200 by the CUPS160; and a step S60 in which the capability information of the printer 200 is outputted for the request of capability information from the CUPS160, and after the connection of the printer 200 to the terminal device 100, allows the same to execute: a step S120 of acquiring printing data from the CUPS160 corresponding to the outputted capability information; and a step S170 of sending printing data obtained by converting the acquired printing data toward the connected printer 200.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing program executed by an information processing device connectable to a printing device, and the information processing device. [Background technology]

[0002] In the past, operating systems (OS) with so-called driverless printing capabilities, which allow printing according to a predetermined printing standard without using a printer driver provided by the printer vendor, have become common. In this case, printing can be performed without installing a printer driver.

[0003] As an example of utilizing the functions of such driverless OS standard printing software and supporting printers that do not support driverless printing or extending the functions of normal driverless printing, a virtual printing device is created within an information processing device that receives print jobs from the OS standard printing software and sends the received print jobs to a printer, as described in Patent Document 1, for example. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Publication No. 2019-175313 Summary of the Invention [Problem to be solved by the invention]

[0005] In the above-described conventional technology, a virtual printing device is registered in the OS's standard printing software, and print data from the OS's standard printing software is output to the virtual printing device, and printing is performed based on that print data. When registering the virtual printing device, capability information is obtained from a real, non-virtual printing device (hereinafter referred to as the "real printing device"), and registration is performed based on that capability information. As a result, initial settings on the information processing device cannot be performed until the real printing device is connected, which is inconvenient.

[0006] An object of the present invention is to provide an information processing program and an information processing device that can register a virtual printing device in advance and perform initial settings, etc., even when a real printing device is not connected, and can then perform printing operations when the real printing device is connected later. [Means for solving the problem]

[0007] In order to achieve the above object, the information processing program of the present invention is an information processing program that can be executed by a calculation unit of an information processing device, and that can communicate with a printing device that is to be connected to the information processing device and execute printing control using the printing device, wherein the information processing device is equipped with an operating system having OS standard printing software, and the information processing program causes the calculation unit of the information processing device to execute a registration process that, when the printing device is not yet connected to the information processing device, registers the information processing program in the OS standard printing software as a virtual printer corresponding to the printing device by responding to a printer search by the OS standard printing software, and a capability information output process that outputs the capability information of the printing device in response to a capability information request from the OS standard printing software, and after the printing device is connected to the information processing device, the information processing program is configured to cause the calculation unit of the information processing device to execute a print data acquisition process that acquires first print data from the OS standard printing software that corresponds to the capability information output in the capability information output process, and a print data transmission process that transmits second print data based on the first print data to the connected printing device.

[0008] The information processing program of the present invention causes the calculation unit of the information processing device to execute a registration process and a capability information output process when a printing device is not yet connected to the information processing device. In the registration process, the information processing program registers the printing device as a virtual printer in the OS-standard printing software by responding to a printer search by the OS-standard printing software. In the capability information output process, capability information of the printing device is output in response to a capability information request from the OS-standard printing software. In this way, according to the present invention, even when a printing device is not actually connected, a virtual printing device can be registered in advance and capability information of a printing device to be connected can be output, making it possible to perform various initial settings, setup, etc. in the information processing device. This improves convenience. Furthermore, the information processing program of the present invention causes the calculation unit of the information processing device to execute a print data acquisition process and a print data transmission process after a printing device is connected to the information processing device. In the print data acquisition process, first print data is acquired from the OS-standard printing software corresponding to the capability information output in the capability information output process. In the print data transmission process, second print data based on the first print data is sent to the connected printing device, and printing is performed. In this way, according to the present invention, when a printing device that was not originally connected is later connected, a printing operation can be performed. [Effects of the Invention]

[0009] According to the present invention, even when a real printing device is not connected, a virtual printing device can be registered in advance to perform initial settings, etc., and printing operations can be performed later when the real printing device is connected. [Brief explanation of the drawings]

[0010] [Figure 1] 1 is a block diagram illustrating an example of a system configuration of a printing system and a functional configuration of a terminal device according to an embodiment of the present invention. [Figure 2] FIG. 4 is a diagram illustrating an example of setting value information of a printer. [Figure 3] 10 is a flowchart illustrating an example of a control procedure for registering a printer application in CUPS after the printer application is installed, in a state where a printer is not connected to a terminal device. [Figure 4] 10 is a flowchart illustrating an example of a control procedure when a user issues a print execution instruction after CUPS registers a printer application as a virtual printer. [Figure 5] FIG. 10 is a block diagram illustrating an example of the system configuration of a printing system and the functional configuration of a terminal device in a modified example in which capability information and setting value information are acquired after installation. [Figure 6] 10 is a flowchart illustrating an example of a control procedure in a modified example in which capability information and setting value information are acquired after installation. [Figure 7] FIG. 2 is a block diagram illustrating an example of a hardware configuration of a terminal device and a printer. DETAILED DESCRIPTION OF THE INVENTION

[0011] <Embodiment> An embodiment of the present invention will be described with reference to the drawings.

[0012] <Printing system overview> Fig. 1 shows an example of the system configuration of a printing system 1 according to this embodiment. In Fig. 1, the printing system 1 has a terminal device 100 and a printer 200. The terminal device 100 and the printer 200 are communicably connected via, for example, the Internet, a wired LAN, or a wireless LAN. The terminal device 100 is an example of an information processing device, and the printer 200 is an example of a printing device and an actual printing device.

[0013] <Functional configuration of terminal device> The terminal device 100 transmits print data to the printer 200 to cause it to print. The terminal device 100 is, for example, a desktop PC, a notebook PC, a tablet computer, or the like, but it may also be a mobile terminal such as a smartphone. As will be described in detail later, the terminal device 100 has a processor 110 and a storage device 115 that stores various print processing programs (see FIG. 7 described later). When the processor 110 executes the various print processing programs, the terminal device 100 has the functional configuration shown in FIG. 1.

[0014] 1, the terminal device 100 has an OS (Operating System) 101, an editing application 102, a printer application 170, and a browser 104. The OS 101 has a so-called driverless printing function that performs printing according to a predetermined printing standard without using a printer driver provided by a printer vendor.

[0015] The OS 101 includes, for example, a Common Unix Printing System (CUPS) 160, which is a modularized printing system for the OS. The OS 101 is an example of an operating system, and the CUPS 160 is an example of OS standard printing software.

[0016] <cups> The CUPS 160 includes an HTTP server 161, a CUPSPnP manager 162, an IPP client 163, and a print data scheduler and spooler 164.

[0017] The HTTP server 161 is server software that runs on the CUPS 160. The HTTP server 161 obtains information and functions using the HTTP (Hypertext Transfer Protocol) via the browser 104, or provides information and functions to them. The CUPSPnP management unit 162 has a PnP (Plag and Play) function that registers a printer (including a virtual printing device) detected using a protocol such as mDNS / SD in the CUPS 160 and creates a print queue.

[0018] A script executed when the printer application 170 is installed modifies the settings of the CUPS PnP management unit 162 so that the search address for PnP is limited to the internal network of the terminal device 100 (usually IP address 127.0.0.1). As a result, the CUPS 160 cannot directly recognize the printer 200, but recognizes the printer application 170 as the printer. The printer application 170 is not an actual printer, but rather a so-called virtual printer that behaves as a printer to the CUPS 160. The printer application 170 mediates between the CUPS 160 and the printer 200, thereby enabling printing using the CUPS 160 and the printer 200. The printer application 170 is an example of a virtual printing device.

[0019] The IPP client 163 transmits and receives print data or attributes to and from an IPP / mDNS server 173, which will be described later, using the IPP protocol. The print data scheduler and spooler 164 manages print jobs sent from the editing application 102 and the like, and also manages multiple print jobs that occur simultaneously so that they are temporarily blocked and processed sequentially before being handed over to the IPP client 163.

[0020] <Printer application> The printer application 170 can be registered in the CUPS 160 as a virtual printer corresponding to the connected printer 200. The CUPS 160 treats the printer application 170 as a virtual printer and executes various processes related to printing. These processes include, for example, a printer search process and a capability information request process. The printer application 170 includes a printer communication unit 171, an attribute / mDNS conversion unit 172, an IPP / mDNS server 173, a print data conversion unit 174, and a printer capability / setting value storage unit 175. The printer application 170 is an example of an information processing program.

[0021] The printer communication unit 171 communicates with the printer 200 using the IPP protocol. The printer communication unit 171 receives attributes from the printer 200 and transmits print data to the printer 200.

[0022] When a printer 200 is connected to the terminal device 100, the attribute / mDNS conversion unit 172 acquires attributes that indicate the capabilities of the printer 200 via the printer communication unit 171. When the printer 200 is not yet connected to the terminal device 100, the attribute / mDNS conversion unit 172 reads attributes, which are capability information and setting value information of the printer 200 that is to be connected, from the printer capability / setting value storage unit 175. The attribute / mDNS conversion unit 172 converts the attributes acquired from the printer 200 or the printer capability / setting value storage unit 175 into attributes that correspond to printing functions that can be handled by CUPS 160.

[0023] The attribute / mDNS conversion unit 172 has a function of mDNS (multicast Domain Name System). mDNS simultaneously distributes DNS queries within a local network using IP (Internet Protocol) multicast, and simultaneously queries all devices on the same network. Devices that receive a query respond by transmitting their own IP address.

[0024] In response to a capability information request process from CUPS 160, IPP / mDNS server 173 outputs the attribute converted by attribute / mDNS conversion unit 172 to CUPS 160. CUPS 160 outputs print data corresponding to the attribute converted by IPP client 163. IPP / mDNS server 173 acquires print data corresponding to the converted attribute output from CUPS 160 and outputs it to print data conversion unit 174. Note that IPP / mDNS server 173 has the same mDNS function as attribute / mDNS conversion unit 172.

[0025] The print data conversion unit 174 acquires print data from the CUPS 160 via the IPP / mDNS server 173. The print data conversion unit 174 converts the print data acquired from the CUPS 160 into print data according to the printing function of the printer 200. The print data conversion unit 174 outputs the converted print data to the printer communication unit 171. The printer communication unit 171 transmits the print data output from the print data conversion unit 174 to the printer 200 .

[0026] The printer capability / setting value storage unit 175 pre-stores capability information and setting value information of the printer 200 to be connected to the terminal device 100, even when the printer 200 has not yet been connected to the terminal device 100. The printer application 170 may already have the capability information and setting value information when it is installed on the terminal device 100. For example, the capability information and setting value information may be customized in an installer for installing the printer application 170 on the terminal device 100. The capability information is information that indicates the printing capability of the printer 200 to be connected, and includes, for example, the print color (color or black and white), the size and type of print paper, etc.

[0027] FIG. 2 shows an example of the setting value information of the printer 200. In the example shown in FIG. 2, the setting value information includes the printer names, IP addresses, node names, serial numbers, MAC addresses, etc. of the two printers 200 to be connected. The printer names may be the model names of the printers or names given by the user. The IP addresses or node names are examples of access information for the printing devices, and the serial numbers or MAC addresses are examples of identification information. Note that while the example shown in FIG. 2 includes setting value information for multiple printers 200, it may also be setting value information for a single printer 200. Similarly, the capability information of the printers 200 to be connected may also be capability information for one or multiple printers 200. In other words, the capability information and setting value information of the printer 200 held by the printer application 170 may be for one printer 200 or for multiple printers 200.

[0028] <Control procedure> In this embodiment, the printer application 170 is installed in the terminal device 100 regardless of whether the printer 200 is connected to the terminal device 100 or not yet connected. A situation in which the printer 200 is not yet connected to the terminal device 100 may occur, for example, when the terminal device 100 is delivered to a user first and the printer 200 is delivered later, and initial settings and setup are performed on the terminal device 100 first. A control procedure for registering the printer application 170 in the CUPS 160 when the printer 200 is not connected to the terminal device 100 after installation of the printer application 170 will be described with reference to the flowchart in FIG. 3.

[0029] 3, first, in step S10, the printer application 170 determines whether or not a printer search process has been performed by the CUPS 160. The printer search process is a process for searching for a printer 200 (including a virtual printer) that is the target of the print process, and is performed by the CUPSPnP management unit 162 of the CUPS 160 using a protocol such as mDNS / SD. The printer application 170 repeats this step S10 until the printer search process has been performed by the CUPS 160 (step S10: No), and if the printer search process has been performed (step S10: Yes), the printer application 170 proceeds to the next step S15.

[0030] In step S15, the printer application 170 detects the printer 200 connected to the terminal device 100 and acquires setting value information and capability information from the detected printer 200 (S15). As an example of a detection method, the printer application 170 sends an mDNS query from the attribute / mDNS conversion unit 172 and detects that the printer 200 is connected if there is a response. Next, in step S20, the printer application 170 reads setting value information of the printer 200 to be connected from the printer capability / setting value storage unit 175 (S20). Note that if the printer 200 to be connected is detected as connected in step S15, it is assumed that the printer 200 was connected later and the processing of step S20 is skipped.

[0031] In step S30, the printer application 170 transmits the setting value information read in step S15 or S20 to the CUPS 160 in response to the printer search by the CUPS 160. As a result, the CUPS 160 registers the printer application 170 that responded with the new setting value information as a virtual printer corresponding to the printer 200. Note that if the printer application 170 responds with setting value information for multiple printers 200, the CUPS 160 registers the printer application 170 as multiple virtual printers corresponding to each of the multiple printers 200. Step S30 is an example of registration processing. After step S30, the printer application 170 ends this flowchart.

[0032] Next, a flowchart will be described for the printer application 170's response to a request for capability information from the printer application 170 registered as a virtual printer, as CUPS 160 requests. As shown in FIG. 3, in step S40, the printer application 170 determines whether or not a capability information request process has been performed by CUPS 160. The capability information request process is a process for requesting the printing capabilities of the registered printer 200 (including virtual printers). If multiple printers 200 (including virtual printers) are registered, CUPS makes a request for each printer. The printer application 170 repeats step S40 until the capability information request process is performed by CUPS 160 (step S40: No), and if the capability information request process has been performed (step S40: Yes), the printer application 170 proceeds to the next step S45.

[0033] In step S45, the printer application 170 determines whether the printer 200 is already connected to the terminal device 100. If it is determined that the printer 200 is already connected to the terminal device 100 (S45: Yes), the printer application 170 acquires capability information from the printer 200 (S46). On the other hand, if it is determined that the printer 200 is not yet connected to the terminal device 100 (S45: No), the printer application 170 reads capability information of the printer 200 to be connected from the printer capability / setting value storage unit 175 (S50).

[0034] In step S60, in response to a capability information request from CUPS 160, printer application 170 transmits the capability information read in step S46 or step S50 to CUPS 160. Step S60 is an example of capability information output processing. With this, printer application 170 ends this flowchart.

[0035] The control procedure when a user issues a print execution instruction after the CUPS 160 has registered the printer application 170 as a virtual printer will be described with reference to the flowchart of FIG.

[0036] As shown in FIG. 4, first, in step S110, the printer application 170 determines whether a print command has been issued by the user. The print command is based on print data from the CUPS 160 corresponding to the capability information output in step S60. In this embodiment, the user can issue a print command regardless of whether the printer 200 is connected to the terminal device 100. The printer application 170 repeats step S110 until a print command has been issued (step S110: No), and if a print command has been issued (step S110: Yes), the process proceeds to the next step S120. Note that a Yes determination in step S110 when the printer 200 is not connected to the terminal device 100 is an example of command reception processing.

[0037] In step S120, the printer application 170 receives print data from the CUPS 160. The print data is print data from the CUPS 160 that corresponds to the capability information output to the CUPS 160 in step S60. Note that the print data obtained when step S120 is executed with the printer 200 connected to the terminal device 100 is an example of first print data, and step S120 in this case is an example of print data acquisition processing. Note that the print data obtained when step S120 is executed with the printer 200 not connected to the terminal device 100 is an example of third print data.

[0038] In step S130, the printer application 170 determines whether or not the printer 200 is connected to the terminal device 100. For example, the printer application 170 distributes an inquiry by mDNS from the attribute / mDNS conversion unit 172 and makes this determination depending on whether or not there is a response. If the printer application 170 determines that the printer 200 is not connected to the terminal device 100 (step S130: No), the printer application 170 proceeds to the next step S140.

[0039] In step S140, the printer application 170 temporarily spools the print data received in step S120 in an appropriate storage area.

[0040] In step S150, printer application 170 outputs a display signal to display unit 140 (see FIG. 7 described below) for displaying an error message corresponding to the inability to print. The error message may be, for example, a message indicating that printing is not possible, such as toner empty or paper out. In addition to a display, the error may be notified by sound, for example. The error message is an example of a first error message, the display signal is an example of a first message signal, and step S150 is an example of first message signal output processing. After step S150, printer application 170 proceeds to step S110.

[0041] On the other hand, in step S130, if the printer application 170 determines that the printer 200 is connected to the terminal device 100 (step S130: Yes), the process proceeds to the next step S160.

[0042] In step S160, the printer application 170 uses the print data conversion unit 174 to convert the print data received in step S120 into print data that corresponds to the printing function of the printer 200. Note that the print data converted in step S160 when step S120 is executed with the printer 200 connected to the terminal device 100 is an example of second print data based on the first print data. Also, the print data converted in step S160 when step S120 is executed with the printer 200 not connected to the terminal device 100 is an example of fourth print data based on the third print data.

[0043] In step S170, the printer application 170 transmits the print data converted in step S160 to the printer 200 connected to the terminal device 100. Step S170 is an example of a print data transmission process.

[0044] In step S180, printer application 170 determines whether any spooled print data remains. If spooled print data remains (step S180: No), printer application 170 returns to step S160 and repeats steps S160 and S170 until all spooled print data remains. If spooled print data remains (step S180: Yes), printer application 170 ends this flowchart.

[0045] As described above, print data that has been spooled without being printed due to the disconnection of printer 200 can be printed after the connection of printer 200. Note that in the above control procedure, the spooled print data is not printed unless a print execution instruction is given, but the spooled print data may be automatically printed even if a print execution instruction is not given when connection of printer 200 is detected.

[0046] <Effects of the embodiment> In this embodiment, if the printer 200 has not yet been connected to the terminal device 100, the printer application 170 causes the processor 110 of the terminal device 100 to execute steps S30 and S60. In step S30, the printer application 170 responds to a search for the printer 200 by the CUPS 160, thereby registering the printer application 170 with the CUPS 160 as a virtual printer corresponding to the printer 200 to be connected. In step S60, in response to a capability information request from the CUPS 160, the printer application 170 outputs capability information of the printer 200 to be connected. In this way, according to this embodiment, even when the printer 200 is not actually connected, a virtual printer can be registered in advance and capability information of the printer 200 to be connected can be output, making it possible to perform various initial settings, setup, etc. in the terminal device 100. This improves convenience. Furthermore, after the printer 200 is connected to the terminal device 100, the printer application 170 causes the processor 110 of the terminal device 100 to execute steps S120 and S170. In step S120, print data is acquired from the CUPS 160 corresponding to the capability information output in step S60. In step S170, the print data is sent to the printer 200 connected to the terminal device 100, and printing is performed. In this way, according to this embodiment, when a printer 200 that was not originally connected is later connected, a print operation can be performed.

[0047] As a result, for example, in a case where the terminal device 100 is delivered to a user first and the printer 200 is delivered later, it is possible to first perform the initial settings and setup on the terminal device 100. In this case, the initial settings and setup can be performed on multiple terminal devices 100 at once, and the initial settings and setup can be performed on multiple printers 200 for each terminal device 100, thereby greatly improving convenience.

[0048] Furthermore, particularly in this embodiment, the printer application 170 executes step S110 of receiving a print execution instruction when the printer 200 is not yet connected to the terminal device 100. In step S170, the printer application 170 transmits print data based on the spooled print data to the printer 200 connected to the terminal device 100. As a result, even when a print execution instruction is received when the printer 200 is not connected, the print data can be transmitted to the printing device and printing can be executed when the printer 200 is subsequently connected.

[0049] Furthermore, particularly in this embodiment, the printer application 170 executes step 150 of outputting a display signal for displaying a corresponding error message when a print execution instruction is received when the printer 200 is not yet connected to the terminal device 100. As a result, when a print execution instruction is received while the printer 200 is not connected, an error message is displayed, making it possible for the user to recognize that the printer 200 is not connected.

[0050] Furthermore, particularly in this embodiment, in addition to capability information of the printer 200 to be connected, setting value information including access information and identification information of the printer 200 to be connected is stored and held in the printer capability / setting value storage unit 175. As a result, even if the printer 200 has not yet been connected to the terminal device 100, the printer application 170 can be registered as a virtual printer in the CUPS 160 using the access information and identification information.

[0051] <Modification> The present invention is not limited to the above-described embodiment, and various modifications are possible within the scope of the spirit and technical concept of the present invention.

[0052] (1) When entering capacity information and setting value information after installation In the above embodiment, we have described a case where the printer application 170 stores the capability information and setting value information of the printer 200 to be connected before it is installed on the terminal device 100, but this information may also be input after installation, for example.

[0053] FIG. 5 shows an example of the system configuration of a printing system 1A according to this modified example. As shown in FIG. 5, the printing system 1A includes the terminal device 100, the printer 200, and the external device 300. In this modified example, when the printer application 170 is installed, the printer capability and setting value storage unit 175 does not store the capability information and setting value information of the printer 200 to be connected. The terminal device 100 includes an operation unit 150. The operation unit 150 is, for example, a mouse or keyboard, and accepts input of the capability information and setting value information of the printer 200 by a user. After installing the printer application 170, the user inputs the capability information and setting value information of the printer 200 via the operation unit 150 and stores the information in the printer capability and setting value storage unit 175.

[0054] The capability information and setting value information of the printer 200 may be acquired from the external device 300 instead of being input through the operation unit 150. The external device 300 is a removable recording medium such as a USB memory, an optical disk, or an external hard disk. The capability information and setting value information of the printer 200 to be connected are stored in the external device 300, and when the external device 300 is connected to the terminal device 100, the capability information and setting value information are acquired and stored in the printer capability / setting value storage unit 175. The external device 300 may be a terminal device such as a computer or a smartphone. In this case, the capability information and setting value information may be set and edited in the external device 300. The printing system 1A may have both the operation unit 150 and the external device 300, or only one of them.

[0055] <Control procedure> In this modified example, as in the above embodiment, the printer application 170 is installed in the terminal device 100 when the printer 200 is not yet connected to the terminal device 100. In this modified example, the capability information and setting value information of the printer 200 to be connected are obtained before the printer application 170 is registered in the CUPS 160. The control procedure in this modified example will be explained using the flowchart in Fig. 6. Note that in Fig. 6, the same steps as those in Fig. 3 above are assigned the same reference numerals, and explanations will be omitted where appropriate.

[0056] 6, first, in step S3, printer application 170 determines whether or not capability information and setting value information of printer 200 have been input. The capability information and setting value information may be input, for example, by a user via operation unit 150, or by connecting external device 300 or by transmission from external device 300. Printer application 170 repeats step S3 until capability information and setting value information have been input (step S3: No), and if capability information and setting value information have been input (step S3: Yes), proceeds to the next step S6.

[0057] In step S6, the printer application 170 acquires capability information and setting value information of the printer 200 to be connected. As in the above embodiment, the acquired setting value information includes the IP address, node name, serial number, MAC address, etc. of the printer 200 to be connected. The printer application 170 may acquire the capability information and setting value information by accepting input via the operation unit 150 provided in the terminal device 100, for example. The printer application 170 may also acquire the capability information and setting value information by receiving it from, for example, the external device 300. Step S6 is performed before step S30, in which the printer application 170 is registered as a virtual printer in the CUPS 160. Step S6 is an example of capability information acquisition processing.

[0058] In step S9, the printer application 170 stores the capability information and setting value information acquired in step S6 in the printer capability / setting value storage unit 175. Step S9 is an example of capability information storage processing.

[0059] The subsequent steps S10 to S60 are the same as those in FIG. 3, and therefore the description thereof will be omitted.

[0060] <Effects of the modified version> In this modified example, when the printer application 170 is installed on the terminal device 100, the printer application 170 does not store the capability information and setting value information of the printer 200 to be connected. By executing step S6 before step S30, the printer application 170 can acquire, store, and store the capability information and setting value information of the printer 200. The printer application 170 can read out the stored setting value information and capability information as appropriate in response to a request from the CUPS 160, and output it to the CUPS 160. According to this modified example, the capability information and setting value information can be stored in the printer application 170 after installation.

[0061] (2) When notifying the printer disconnection state For example, when the printer 200 is not yet connected to the terminal device 100, the printer application 170 may notify the unconnected state of the printer 200. The printer application 170 may output to the display unit 140 (see FIG. 7 described later), for example, a display signal for displaying an error corresponding to the unconnected state of the printer 200. The error display may be, for example, a display indicating that the printer 200 is unusable, such as powering off the printer 200. In addition to a display, the error may be notified by sound, for example. The error display is an example of a second error notification, the display signal is an example of a second notification signal, and the process of displaying the error is an example of a second notification signal output process.

[0062] In this modified example, while the printer 200 is not connected, an error message is displayed to let the user know that the printer 200 is not connected and is not ready to perform printing immediately.

[0063] (3) Other The flowcharts shown in Figures 3, 4 and 6 do not limit the present invention to the procedures shown in the above flows, and steps may be added or deleted or the order may be changed within the scope that does not deviate from the spirit and technical idea of ​​the invention.

[0064] In addition to the above, the methods according to the above embodiments and modifications may be used in appropriate combination.

[0065] Although not specifically illustrated, the present invention can be implemented with various modifications within the scope of the invention.

[0066] <Hardware configuration of terminal device and printer> An example of the hardware configuration of the terminal device 100 and the printer 200 will be described with reference to FIG.

[0067] <Terminal Device> 7, the terminal device 100 includes a processor 110, a storage device 115, a display unit 140, an operation unit 150, and a communication interface 190. The processor 110, the storage device 115, the display unit 140, the operation unit 150, and the communication interface 190 are connected via a bus 105 so as to be able to transmit and receive data to and from each other.

[0068] The storage device 115 includes a volatile storage device 120 and a nonvolatile storage device 130. The volatile storage device 120 is, for example, a DRAM, and stores various programs and data to be processed. The nonvolatile storage device 130 is, for example, a hard disk drive or a solid state drive, and includes a program storage area 131 and a data storage area 132.

[0069] Various programs are stored in the program storage area 131. The various programs include the printer application 170 and print processing program based on the flowcharts in Figures 3, 4, and 6. The data storage area 132 stores data necessary for executing the various programs.

[0070] The processor 110 is a device that performs data processing, such as a CPU, and executes various programs stored in a program storage area 131. The processor 110 performs various processes including data communication with the printer 200 connected to the network NT. The processor 110 and the programs stored in the program storage area 131 are examples of a calculation unit and a control unit.

[0071] The display unit 140 is, for example, a liquid crystal display, and is capable of displaying various types of information. The operation unit 150 is, for example, a mouse, a keyboard, and the like, and accepts operations by a user. The user can input various instructions to the terminal device 100 by operating the operation unit 150.

[0072] The communication interface 190 is an interface for communicating with other devices, and is connected to the network NT. The communication interface 190 is an example of a communication I / F.

[0073] The storage device 115 is not limited to being configured with the above-mentioned device elements, but may also be configured with, for example, RAM, ROM, EEPROM, HDD, a portable recording medium such as a USB memory that can be attached to or detached from the terminal device 100, a buffer provided in the processor 110, or a combination thereof. The storage device 115 may be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the above examples, non-transitory media also include recording media such as CD-ROMs and DVD-ROMs. Non-transitory media are also tangible media. The same applies to the storage device 215 of the printer 200, which will be described later.

[0074] <Printer> 7, the printer 200 has a processor 210, a storage device 215, a display unit 240, an operation unit 250, a communication interface 270, and a printing unit 290. The processor 210, the storage device 215, the display unit 240, the operation unit 250, the communication interface 270, and the printing unit 290 are connected via a bus 205 so as to be able to send and receive data to and from each other.

[0075] The storage device 215 includes a volatile storage device 220 and a nonvolatile storage device 230. The volatile storage device 220 is, for example, a DRAM, and includes an image data storage area 222 that stores image data to be printed. The nonvolatile storage device 230 is, for example, an NVRAM, a flash memory, or the like, and includes a program storage area 231 and a data storage area 232. Various programs are stored in the program storage area 231. The various programs include firmware such as a print processing program. The data storage area 232 stores various data and the like for executing the various programs.

[0076] The processor 210 is a device that performs data processing, such as a CPU, and executes various programs stored in the program storage area 231.

[0077] The display unit 240 is, for example, a liquid crystal display, and is capable of displaying various types of information. The operation unit 250 is a device that accepts operations by the user. The user can input various instructions to the printer 200 by operating the operation unit 250. The communication interface 270 is a wired or wireless network interface for communicating with other devices, and is connected to the network NT.

[0078] The printing unit 290 prints an image on a sheet conveyed by a conveying mechanism (not shown). The printing unit 290 prints an image on a sheet based on print data transmitted from the terminal device 100 or a print job that the printing unit 290 itself has generated based on an operation on the operation unit 250. [Explanation of symbols]

[0079] 1 Printing System 1A Printing System 100 Terminal device (an example of an information processing device) 101 OS (an example of an operating system) 110 processors 160 CUPS (an example of OS standard printing software) 170 Printer application (an example of an information processing program) 190 Communication Interface (Example of communication I / F) 200 Printer (an example of a printing device) 300 External equipment< / cups>

Claims

1. An information processing program that can be executed by a calculation unit of an information processing device, and that can communicate with a printing device that is to be connected to the information processing device and execute print control using the printing device, wherein the information processing device is equipped with an operating system having OS standard printing software; When the printing device is not yet connected to the information processing device, the information processing program causes a calculation unit of the information processing device to: a registration process for registering the information processing program in the OS standard printing software as a virtual printer corresponding to the printing device in response to a printer search by the OS standard printing software; a capability information output process for outputting the capability information of the printing device in response to a capability information request from the OS standard printing software; Execute The information processing program, after the printing device is connected to the information processing device, a print data acquisition process for acquiring first print data from the OS standard print software corresponding to the capability information output in the capability information output process; a print data transmission process for transmitting second print data based on the first print data to the connected printing device; An information processing program configured to cause the

2. When the printing device is not yet connected to the information processing device, the information processing program causes a calculation unit of the information processing device to: a capability information acquisition process for acquiring the capability information of the printing device before the registration process; a capability information storage process for storing and holding the capability information acquired in the capability information acquisition process; Execute 2. The information processing program according to claim 1, wherein the information processing program is configured to:

3. In the capability information acquisition process, receiving and acquiring the capability information via an operation unit provided in the information processing device; 3. The information processing program according to claim 2, wherein the information processing program is configured to:

4. In the capability information acquisition process, receiving and acquiring the capability information transmitted from the external device; 3. The information processing program according to claim 2, wherein the information processing program is configured to:

5. The calculation unit further an instruction receiving process for receiving a print execution instruction based on third print data from the OS standard printing software corresponding to the capability information output in the capability information output process when the printing device is not yet connected to the information processing device; Execute In the print data transmission process, Sending fourth print data based on the third print data to the connected printing device.

2. The information processing program according to claim 1, wherein the information processing program is configured to:

6. When the printing device is not yet connected to the information processing device, the calculation unit further executes a first notification signal output process to output a first notification signal for issuing a corresponding first error notification when a print execution instruction based on third print data from the OS standard printing software corresponding to the capability information output in the capability information output process is received.

2. The information processing program according to claim 1, wherein the information processing program is configured to:

7. When the printing device is not yet connected to the information processing device, the calculation unit further executes a second notification signal output process for outputting a second notification signal for issuing a corresponding second error notification; 2. The information processing program according to claim 1, wherein the information processing program is configured to:

8. 5. The information processing program according to claim 2, wherein the capability information acquisition process acquires access information and identification information of the printing device to be connected in addition to the capability information.

9. An information processing apparatus having a communication I / F capable of communicating with a printing apparatus to be connected, an operating system having OS standard printing software, and a control unit having an information processing program, The control unit a registration process for registering the information processing program in the OS standard printing software as a virtual printer corresponding to the printing device by responding to a printer search by the OS standard printing software when the printing device is not yet connected to the information processing device; a capability information output process for outputting the capability information of the printing device in response to a capability information request from the OS standard printing software; a print data acquisition process for acquiring first print data from the OS standard print software corresponding to the capability information output in the capability information output process after the printing device is connected to the information processing device; a print data transmission process for transmitting second print data based on the first print data to the connected printing device; An information processing device configured to execute the above.

Citation Information

Patent Citations

  • Application program

    JP2019175313A