Virtual printer hypervisor

By using a virtual printer management program to select and configure the printing device, the problem of users having difficulty identifying and managing the printing device is solved. This allows for printing settings without direct access to the printing device, thus improving the user experience.

CN121752988APending Publication Date: 2026-03-27BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-07
Publication Date
2026-03-27

AI Technical Summary

Technical Problem

When using a virtual printer, users may find it difficult to clearly identify and manage the association with the desired printing device, which could lead to incorrect printing execution.

Method used

A virtual printer management program is provided, which performs selection screen display processing, selection acceptance processing, and setting screen startup processing through the computing unit of an information processing device, allowing users to select and set the printing device without directly accessing the printing device in the information processing program, and realize printing settings with the desired printing device.

Benefits of technology

Users can execute print settings based on the desired printing device without having to perform any processing corresponding to the virtual printer, simplifying printing device management and improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121752988A_ABST
    Figure CN121752988A_ABST
Patent Text Reader

Abstract

The present invention enables a user to execute a unique print setting based on a virtual printer corresponding to a desired printing device without performing a process corresponding to the virtual printer. An initiator (106) causes a processor (110) of a terminal device (100) to execute: a step (S20) for outputting display data for causing a display unit (140) of the terminal device (100) to display a dialog box (DB1) capable of selecting a plurality of printers (200) corresponding to a plurality of printer applications (170); a step S400 in which a selection operation of one printer (200) among the plurality of printers (200) is accepted in the displayed dialog box (DB1); and a step S420 of performing a process for causing one printer application (170) corresponding to the one printer (200) accepted in the step S400 among the plurality of printer applications (170) to display, on a display unit (140) of the terminal device (100), a print setting screen of the one printer (200) for which the selection has been accepted.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to a virtual printer management program executed by an information processing apparatus capable of communicating with a printing apparatus. BACKGROUND

[0002] Conventionally, as described in Patent Literature 1, for example, an application program is known that functions as one virtual printer based on the sum of capability information of a plurality of printing apparatuses. In the program of the related art, an inherent print setting of a printing apparatus for printing is accepted, and in a case where a print instruction is received, one printing apparatus of the plurality of printing apparatuses that is most suitable for the accepted print setting is selected, and print data is transmitted to the printing apparatus.

[0003] RELATED ART DOCUMENT

[0004] PATENT LITERATURE

[0005] Patent Literature 1: Japanese Patent Application Publication No. 2020-160905 SUMMARY

[0006] PROBLEMS TO BE SOLVED BY THE INVENTION

[0007] In the above-described related art, a user can make an inherent print setting of a printing apparatus with respect to a virtual printer without knowing which printing apparatus of a plurality of printing apparatuses performs printing. However, the association between the virtual printer and the printing apparatus is unclear to the user, and there can be a case where printing is performed by a printing apparatus different from a printing apparatus desired by the user.

[0008] An object of the present application is to provide a management program that can perform an inherent print setting based on a virtual printer corresponding to a desired printing apparatus without a user performing a process corresponding to the virtual printer.

[0009] MEANS FOR SOLVING THE PROBLEMS

[0010] To achieve the above object, the information processing program of the present application is a virtual printer management program that can be executed by an arithmetic unit of an information processing apparatus capable of connecting to a plurality of printing devices, wherein the information processing apparatus has an OS standard printing software and a plurality of information processing programs, the OS standard printing software is standardly mounted on an operating system, and is capable of performing driverless printing that does not use a driver provided by a printer vendor, the plurality of information processing programs are registered in the OS standard printing software as virtual printers corresponding to the plurality of printing devices, the virtual printer management program is configured to cause the arithmetic unit of the information processing apparatus to execute: selection screen display processing that outputs selection screen display data that causes a display unit of the information processing apparatus to display a selection screen from which the plurality of printing devices corresponding to the plurality of information processing programs can be selected; selection reception processing that receives a selection operation of one of the plurality of printing devices in the displayed selection screen; and setting screen activation processing that performs processing for causing one of the plurality of information processing programs corresponding to the one of the plurality of printing devices received in the selection reception processing to display a print setting screen of the one of the plurality of printing devices received in the selection reception processing on the display unit of the information processing apparatus.

[0011] When the arithmetic unit executes the virtual printer management program of the present application, the selection screen display processing, the selection reception processing, and the setting screen activation processing are executed. In the selection screen display processing, the selection screen display data that causes the display unit of the information processing apparatus to display the selection screen from which the plurality of printing devices corresponding to the plurality of information processing programs can be selected is output. In the selection reception processing, the selection operation of one of the plurality of printing devices in the displayed selection screen is received. In the setting screen activation processing, the processing for causing one of the plurality of information processing programs corresponding to the one of the plurality of printing devices received in the selection reception processing to display the print setting screen of the one of the plurality of printing devices received in the selection reception processing on the display unit of the information processing apparatus is performed.

[0012] According to the present application, the user can cause the print setting screen of the desired printing device to be displayed on the display unit of the information processing apparatus by performing the operation of selecting the desired printing device in the selection screen. Thus, the user can perform the print setting without having to access the information processing program corresponding to the desired printing device, for example, by inputting a port number, a URL, or the like in a browser. Therefore, the user can execute the print setting based on the virtual printer corresponding to the desired printing device without having to perform the processing corresponding to the virtual printer.

[0013] Effects of the Invention

[0014] According to the present application, the user can perform printing based on the print setting inherent to the virtual printer corresponding to the desired print apparatus without performing a process corresponding to the virtual printer. BRIEF DESCRIPTION OF DRAWINGS

[0015] Figure 1 is a block diagram showing an example of a system configuration of a print system and a functional configuration of a terminal device according to an embodiment of the present application.

[0016] Figure 2 is a block diagram showing a specific example of a print system in a case where a plurality of printer applications are installed in a terminal device.

[0017] Figure 3 is a diagram showing an example of a dialog box displayed on a display section of a terminal device by a launcher when a first printer application is installed in the terminal device.

[0018] Figure 4 is a diagram showing an example of a dialog box displayed on a display section of a terminal device by a launcher when a second printer application is installed in the terminal device.

[0019] Figure 5 is a diagram showing an example of a dialog box displayed on a display section of a terminal device by a launcher when a first printer of a printer group 1 is registered to the first printer application.

[0020] Figure 6 is a diagram showing an example of a dialog box displayed on a display section of a terminal device by a launcher when a second printer of a printer group 2 is registered to the second printer application.

[0021] Figure 7 is a diagram showing an example of a dialog box displayed on a display section of a terminal device by a launcher when a third printer of the printer group 2 is registered to the second printer application.

[0022] Figure 8 is a diagram showing an example of a dialog box displayed on a display section of a terminal device by a launcher when the user selects a desired printer and causes a print setting screen to be displayed.

[0023] Figure 9 is a flowchart showing an example of a control process executed when the launcher is started.

[0024] Figure 10 is a flowchart showing an example of a control process executed by the launcher in a case where a step S100 as a click event of an installation button occurs.

[0025] Figure 11 is a flowchart showing an example of a control process executed by the launcher in a case where a step S200 as a button selection event of a printer application occurs.

[0026] Figure 12 is a flowchart showing an example of a control process performed by the launcher in a case where step S300, which is a button selection event as a printer application, occurs.

[0027] Figure 13 is a flowchart showing an example of a control process performed by the launcher in a case where step S310, which is a process for a printer application as a processing target, occurs.

[0028] Figure 14 is a flowchart showing an example of a control process performed by the launcher in a case where step S400, which is a click event as a printer button, occurs.

[0029] Figure 15 is a block diagram showing an example of a hardware structure of the terminal device and the printer. DETAILED DESCRIPTION

[0030] <EMBODIMENT>

[0031] An embodiment of the present application will be described with reference to the accompanying drawings.

[0032] <OVERVIEW OF PRINTING SYSTEM>

[0033] Figure 1 An example of a system structure of the printing system 1 of the present embodiment is shown. In the present embodiment, the printing system 1 has a terminal device 100 and a printer 200. The terminal device 100 and the printer 200 are communicably connected, for example, via the Internet, a wired LAN, or a wireless LAN, or the like. Note that the terminal device 100 is an example of an information processing device, and the printer 200 is an example of a printing device. Figure 1 <FUNCTIONAL STRUCTURE OF TERMINAL DEVICE>

[0034] The terminal device 100 transmits print data to the printer 200 to cause it to perform printing. The terminal device 100 is, for example, a desktop PC, a notebook PC, a tablet, or the like, but can also be a smartphone or the like. The terminal device 100 has a processor 110 and a storage device 115 in which various print processing programs are stored, the details of which will be described later (refer to the description of the functional structure of the terminal device 100 shown in FIG. 2).

[0035] By executing the various print processing programs by the processor 110, the terminal device 100 has the functional structure shown in FIG. 2. Note that in the following description, there are cases in which the processing performed by the program is described as the program performing the processing, which means that the processing is performed by executing the program by the processor 110. Figure 15 Figure 1 As shown in FIG. 2, the terminal device 100 has a function of a print data transmission unit 101, a function of a print data reception unit 102, a function of a print data transmission unit 103, a function of a print data reception unit 104, a function of a print data transmission unit 105, a function of a print data reception unit 106, a function of a print data transmission unit 107, a function of a print data reception unit 108, a function of a print data transmission unit 109, and a function of a print data reception unit 110.

[0036] As shown in FIG. 2, the terminal device 100 has a function of a print data transmission unit 101, a function of a print data reception unit 102, a function of a print data transmission unit 103, a function of a print data reception unit 104, a function of a print data transmission unit 105, a function of a print data reception unit 106, a function of a print data transmission unit 107, a function of a print data reception unit 108, a function of a print data transmission unit 109, and a function of a print data reception unit 110. Figure 1 ​​​As shown, the terminal device 100 has an OS (Operating System) 101, an application 102 corresponding to a print function of the OS, a printer application 170, a browser 104, a launcher 106, and a database 107. The OS 101 has a so-called driverless printing function that performs printing in accordance with a prescribed printing standard without using a printer driver provided by a printer vendor.

[0037] As an example, the OS 101 has a CUPS (Common Unix Printing System) 160, which is a modularized printing system for the OS. Note that the OS 101 is an example of an operating system, and the CUPS 160 is an example of an OS standard printing software.

[0038] <cups>

[0039] The CUPS 160 has an HTTP server 161, a CUPS PnP management section 162, an IPP client 163, and a print data scheduling & spooler 164.

[0040] The HTTP server 161 is server software that runs on the CUPS 160. The HTTP server 161 uses the HTTP (Hypertext Transfer Protocol) protocol via the browser 104 to acquire or provide information, functions.

[0041] The CUPS PnP management section 162 has a PnP (Plag and Play) function that registers printers (including virtual printing devices) detected using a protocol such as mDNS / SD in the CUPS 160 to create a print queue.

[0042] The CUPS PnP management section 162 makes a change in settings in such a way that the search address for PnP is limited to the internal network (typically the IP address 127.0.0.1) of the terminal device 100 by a script executed at the time of installation of the printer application 170. Therefore, the CUPS 160 cannot directly recognize the printer 200 and recognizes the printer application 170 as a printer. The printer application 170 is not a real printer but a so-called virtual printer that acts as a printer with respect to the CUPS 160. The printer application 170 realizes printing using the CUPS 160 and the printer 200 via the CUPS 160 and the printer 200. The printer application 170 is an example of a virtual printer.

[0043] The IPP client 163 transmits and receives print data or attributes using the IPP protocol between the IPP / mDNS server 173 described later.

[0044] The print data scheduling & spooler 164 manages print jobs sent from the application 102 and the like and manages a plurality of print jobs generated at the same time in such a way that they are temporarily blocked and sequentially processed to be delivered to the IPP client 163.

[0045] <Printer Application>

[0046] The printer application 170 can be registered in the CUPS 160 as a virtual printer corresponding to the connected printer 200. The CUPS 160 processes the printer application 170 as a virtual printer and performs various processes related to printing. The various processes include, for example, capability information acquisition processing, print data transmission processing, and the like. The printer application 170 has a printer communication section 171, an attribute / mDNS conversion section 172, an IPP / mDNS server 173, a print data conversion section 174, and a print setting storage section 175. The printer application 170 is an example of an information processing program.

[0047] The printer communication section 171 performs communication with the printer 200. The printer communication section 171 receives capability information from the printer 200 and transmits print data to the printer 200. The communication with the printer is performed through a network, USB, or the like. In the case of a network, protocols such as IPP, LPD, and the like are used. In addition, with respect to the capability information, IPP attributes are used in the case of the IPP protocol, and PJL information and the like are used in the case of other interfaces, protocols, and the like.

[0048] The attribute / mDNS conversion section 172 acquires capability information indicating the capability of the printer 200 via the printer communication section 171. The attribute / mDNS conversion section 172 converts the capability information acquired from the printer 200 into IPP attributes corresponding to the print functions that the CUPS 160 can process. The IPP attribute / mDNS conversion section 172 can perform the conversion of the attributes based on print setting information read out from the print setting storage section 175.

[0049] Note that the attribute / mDNS conversion section 172 has a function of mDNS (multicast Domain Name System). mDNS distributes a query of DNS by IP (Internet Protocol) multicast within a local network and simultaneously performs a query to all devices of the same network. A device that receives the query transmits its own IP address to respond.

[0050] The print setting storage section 175 stores print setting information of the printer 200 corresponding to the printer application 170. The print setting information includes, for example, the size of the paper to be printed, the kind of the paper to be printed, the storage place of the paper to be printed, and the like (see (b) of the description of the print setting information to be described later). Figure 8 The print setting information is set in the terminal device 100. For example, the print setting information is displayed on the display section 140 via the launcher 106 or the browser 104 (see the description of the print setting information to be described later). Figure 15 in the print setting screen. The HTTP server 176 of the printer application 170 acquires the print setting information set in the print setting screen described above, and stores the print setting information in the print setting storage section 175. The print setting storage section 175 is, for example, a part of the data storage area 132 of the nonvolatile storage device 130 of the storage device 115 of the terminal device 100 (refer to the description of FIG. 6 Figure 15 ). Note that the print setting is not limited to being set in the terminal device 100, but can be set in an external terminal, or a content of the print setting can be installed in the printer application 170 in advance.

[0051] The IPP / mDNS server 173 outputs the attribute converted by the attribute / mDNS conversion section 172 toward the CUPS 160 for the capability information acquisition process of the CUPS 160. The CUPS 160 outputs print data corresponding to the attribute converted by the IPP client 163. The IPP / mDNS server 173 acquires the print data corresponding to the converted attribute output from the CUPS 160 for the print data transmission process of the CUPS 160, and outputs the print data to the print data conversion section 174. Note that the IPP / mDNS server 173 has the mDNS function as with the attribute / mDNS conversion section 172.

[0052] The print data conversion section 174 acquires the print data from the CUPS 160 via the IPP / mDNS server 173. The print data conversion section 174 converts the print data acquired from the CUPS 160 into print data corresponding to the print function of the printer 200. The print data conversion section 174 can perform the conversion of the print data described above based on the print setting information read out from the print setting storage section 175. The print data conversion section 174 outputs the converted print data to the printer communication section 171.

[0053] The printer communication section 171 transmits the print data output from the print data conversion section 174 with respect to the printer 200.

[0054] The launcher 106 is a program that manages the printer applications 170 as virtual printers. The launcher 106 performs various processes in response to operations by the user. The various processes include, for example, installation of the printer applications 170 with respect to the terminal device 100, registration of the printers 200 with respect to the printer applications 170, display of a print setting screen of the printers 200, and print setting in the print setting screen. Various information used when the launcher 106 performs the above-described various processes is stored in the database 107. The various information includes, for example, a port number of the HTTP server 176 of each printer application 170 and a URL of the print setting screen of the printers 200 registered in each printer application 170. The launcher 106 is an example of a virtual printer management program.

[0055] <Features of the Embodiment>

[0056] With respect to a single printer application 170, a plurality of printers 200 can be registered, and it is not limited to one printer 200. For example, in a case where the user uses a plurality of types of printers 200, such as a color inkjet type printer 200 and a monochrome laser type printer 200, according to the use, a single printer application 170 can not be able to cover the functions of these printers. In this case, a plurality of printer applications 170 are installed in one terminal device 100.

[0057] Here, the user interface of the printer application 170 is provided via the HTTP server 176 by the HTTP protocol, and the user accesses the print setting screen of the corresponding printer 200 using the browser 104. Normally, the access is performed using, for example, the URI (URL) of http: / / localhost:8000, but in a case where a plurality of printer applications 170 are installed as described above, the access can be individually performed by the location of the changed port number, such as http: / / localhost:8001. In this case, the user needs to manage a plurality of port numbers.

[0058] In addition, in a case where a plurality of printer applications 170 are installed as described above, the print setting screen of each printer 200 is accessed via the corresponding printer application 170. In this case, the user needs to manage which printer 200 is registered in which printer application 170. Further, it is also necessary to check which port each printer application is assigned to before the access. In this way, the user can be forced to perform complicated management work.

[0059] In this embodiment, by installing launcher 106, the user can access the print settings screen of the desired printer 200 without managing port numbers or knowing which printer application 170 each printer 200 is registered in. Details are described below. It should be noted that in the following description, the launcher will be described as having two pre-saved installation packages (printer_group 1.deb, printer_group 2.deb) for printer applications in the directory ( / home / XXXX).

[0060] <Starter screen display>

[0061] Figure 2 A specific example of a printing system 1 is shown where multiple printer applications 170 are installed in a terminal device 100. It should be noted that... Figure 2 In the middle, to and Figure 1 Identical structures are labeled with the same numbers, and explanations are omitted. Figure 2 In the example shown, a first printer application 170A and a second printer application 170B are installed in terminal device 100. The first printer application 170A manages a first printer 200A, which functions as a single printer. The first printer 200A constitutes printer group 1. The second printer application 170B manages a second printer 200B and a third printer 200C, which function as two printers. The second printer 200B and the third printer 200C constitute printer group 2.

[0062] Figure 3 (a) to Figure 3 (c) shows an example of a dialog box displayed on the display section 140 of the terminal device 100 via the launcher 106 when the first printer application 170A is installed in the terminal device 100. Figure 3 (a) shows the state where printer application 170 is not yet installed; only the install button B1 is displayed in dialog box DB1. When in... Figure 3 When operating the installation button B1 in (a), it is converted to Figure 3 (b)

[0063] exist Figure 3 In (b), the package dialog box DB2 is displayed on dialog box DB1. Package dialog box DB2 displays the package for printer application 170 in an optional manner. In package dialog box DB2, a directory specification section is displayed that allows you to specify the directory where the package is placed (in... Figure 3 (b) shows / home / XXXX) and the installable packages located in that directory, and displays the selection button B2 for selecting packages. Figure 3 In the example shown in (b), "printer_group 1.deb" corresponding to printer group 1 is displayed as a package. When in Figure 3 When selecting the package in (b) and operating the selection button B2, the first printer application 170A is installed in the terminal device 100, launched, and executed. The HTTP server 176 of the printer application 170A is then launched, and localhost:8000 becomes communicative. The launcher 106 monitors the address of localhost (local host), and when the launcher recognizes that port localhost:8000 has been newly opened by the HTTP server 176 and becomes communicative, it converts... Figure 3 (c) At this point, obtain and store the port number of the HTTP server 176 for the first printer application 170A that is installed.

[0064] exist Figure 3 In (c), the PA object OB1, which displays information about the first installed printer application 170A, is shown in dialog box DB1. Figure 3 In the example shown in (c), the PA object OB1 displays "printer group1 PA link" indicating that the first printer uses 170A. The URL of the corresponding printer's additional settings screen (http: / / localhost:8000) is associated with the PA object OB1 as the link destination. When the PA object OB1 is manipulated, the corresponding printer's additional settings screen is displayed (see below). Figure 5 ).

[0065] Figure 4 (a) to Figure 4 (c) shows an example of a dialog box displayed on the display section 140 of the terminal device 100 via the launcher 106 when the second printer application 170B is installed in the terminal device 100. Figure 4 (a) shows a state where the first printer application 170A is installed and the second printer application 170B is not installed, and the PA object OB1 is displayed in dialog box DB1. When in Figure 4 When operating the installation button B1 in (a), it is converted to Figure 4 (b)

[0066] exist Figure 4 In (b), a package dialog box DB2 is displayed on dialog box DB1, which displays the package for printer application 170 in an optional manner. Figure 4 In the example shown in (b), "printer_group 2.deb" corresponding to printer group 2 is displayed as a package. When in Figure 4 When selecting a package and operating the selection button B2 in (b), a second printer application 170B is installed in the terminal device 100, performs the same processing as the first printer application 170A, and is converted to... Figure 4 (c) At this point, obtain and store the port number of the HTTP server 176 of the installed second printer application 170B.

[0067] exist Figure 4 In (c), in dialog box DB1, in addition to PA object OB1, PA object OB2, which displays information indicating the installed second printer application 170B, is also displayed. Figure 4 In the example shown in (c), the PA object OB2 displays "printer group2 PA link," indicating that it is the second printer application 170B. The URL of the corresponding printer's additional settings screen (http: / / localhost:8001) is associated with this PA object OB2 as the link destination. When the PA object OB2 is operated, the corresponding printer's additional settings screen is displayed (see below). Figure 6 , Figure 7 ).

[0068] Figure 5 (a) to Figure 5 (d) shows an example of a dialog box displayed on the display unit 140 of the terminal device 100 via the starter 106 when the first printer 200A of the printer group 1 is registered in the first printer application 170A. Figure 5 (a) is with Figure 4 (c) The same screen, with PA objects OB1 and OB2 displayed in dialog box DB1. Figure 5 In (a), when manipulating the PA object OB1, browser 104 is launched, and a new URL based on the link is displayed. Figure 5 The display screen of (b).

[0069] Figure 5 (b) is the screen displayed via browser 104. The data constituting the content displayed via browser 104 is generated by HTTP server 176 of printer application 170A and has a UI for registering the printer. Figure 5 (b) and Figure 5 (c) is the screen displayed by the HTTP server 176 via the browser 104, and the printer application 170A performs processing corresponding to the screen operations. Figure 5 In (b), dialog box DB3 is displayed as an additional settings screen for the printer relative to the first printer application 170A. Figure 5 In the example shown in (b), the URL of dialog box DB3 is, for example, http: / / localhost:8000. "8000" in the URL represents the port number of the HTTP server 176 of the first printer application 170A. Dialog box DB3 displays a printer display PI1 for selecting the first printer 200A that can be appended, and an append button B3 for registering the first printer 200A. Printer display PI1 shows the printers that the first printer application 170A has found using mDNS. When in... Figure 5 When selecting the first printer 200A in (b) and operating the installation button B3, it switches to... Figure 5 (c)

[0070] Figure 5 (c) is also the screen displayed via browser 104. Figure 5 In (c), dialog box DB4 is displayed as the installation screen for the first printer 200A. Figure 5 In the example shown in (c), the URL of dialog box DB4 is, for example, http: / / localhost:8000 / addprinter. Dialog box DB4 displays an append operation performed by the first printer 200A relative to the first printer application 170A, and an OK button B4. When appending the first printer 200A using printer application 170A, HTTP server 176 makes localhost:8000 / printer1 accessible. Figure 5 When the OK button B4 is pressed in (c), browser 104 terminates. Launcher 106 monitors localhost:8000 / , and when it detects that localhost:8000 / printer1 has become usable, the launcher 106's display screen changes. Figure 5 The display screen of (d).

[0071] exist Figure 5 In (d), PA objects OB1 and OB2 are displayed in dialog box DB1, and along with PA object OB1, printer object PB1 is displayed for selecting the first printer 200A. Figure 5 In the example shown in (d) of FIG. 10, the printer object PB1 is displayed hierarchically below the PA object OB1, and it is represented that the first printer 200A is managed by the first printer application 170A that manages the printer group 1. The URL (localhost:8000 / printerl) of the print setting screen corresponding to the printer object PB1 is associated as a link destination, and when the printer object PB1 is operated, the browser 104 is activated to display the print setting screen of the first printer 200A generated by the HTTP server 176. Note that the printer object PB1 is an example of a selection object, and the URL of the print setting screen is an example of a setting screen address.

[0072] Figure 6 (a) to (c) of FIG. 9 show an example of a dialog box displayed on the display portion 140 of the terminal device 100 by the launcher 106 when the second printer 200B of the printer group 2 is registered in the second printer application 170B. Figure 6 (a) of FIG. 9 is the same screen as (d) of FIG. 8, and the PA objects OB1, OB2 and the printer object PB1 are displayed in the dialog box DB1. When the PA object OB2 is operated in (a) of FIG. 9, the browser 104 is activated, and the display screen of (b) of FIG. 9 is newly displayed based on the URL of the link. Figure 6 (a) of FIG. 9 is the same screen as (d) of FIG. 8, and the PA objects OB1, OB2 and the printer object PB1 are displayed in the dialog box DB1. When the PA object OB2 is operated in (a) of FIG. 9, the browser 104 is activated, and the display screen of (b) of FIG. 9 is newly displayed based on the URL of the link. Figure 5 (a) of FIG. 9 is the same screen as (d) of FIG. 8, and the PA objects OB1, OB2 and the printer object PB1 are displayed in the dialog box DB1. When the PA object OB2 is operated in (a) of FIG. 9, the browser 104 is activated, and the display screen of (b) of FIG. 9 is newly displayed based on the URL of the link. Figure 6 (a) of FIG. 9 is the same screen as (d) of FIG. 8, and the PA objects OB1, OB2 and the printer object PB1 are displayed in the dialog box DB1. When the PA object OB2 is operated in (a) of FIG. 9, the browser 104 is activated, and the display screen of (b) of FIG. 9 is newly displayed based on the URL of the link. Figure 6 (a) of FIG. 9 is the same screen as (d) of FIG. 8, and the PA objects OB1, OB2 and the printer object PB1 are displayed in the dialog box DB1. When the PA object OB2 is operated in (a) of FIG. 9, the browser 104 is activated, and the display screen of (b) of FIG. 9 is newly displayed based on the URL of the link.

[0073] Figure 6 (b) of FIG. 9 is a screen displayed via the browser 104. In (b) of FIG. 9, the browser 104 displays the dialog box DB3 that is an addition setting screen of the printer with respect to the second printer application 170B. In the example shown in (b) of FIG. 9, the URL of the dialog box DB3 is, for example, http: / / localhost:8001. The "8001" of the URL indicates the port number of the HTTP server 176 of the second printer application 170B. The dialog box DB3 is displayed via the browser 104 by the HTTP server 176, and displays the printer display PI2 for selecting the second printer 200B that can be added, the printer display PI3 for selecting the third printer 200C that can be added, and the addition button B3. The printer displays PI2, PI3 display the printers searched by the second printer application 170B using the mDNS. When the second printer 200B is selected in (b) of FIG. 9 and the installation button B3 is operated, it is switched to (c) of FIG. 9. Figure 6 Figure 6 Figure 6 Figure 6

[0074] Figure 6 ​​​​(c) is also a screen displayed by HTTP server 176 via browser 104. Figure 6 In (c), dialog box DB4 is displayed as the installation screen for the second printer 200B. Figure 6 In the example shown in (c), the URL of dialog box DB4 is, for example, http: / / localhost:8001 / addprinter. Dialog box DB4 displays an append process for the second printer 200B relative to application 170B, along with an OK button B4. When in... Figure 6 When the OK button B4 is pressed in (c), browser 104 terminates and a new window is displayed via launcher 106. Figure 6 The display screen of (d).

[0075] exist Figure 6 In (d), PA objects OB1 and OB2 are displayed in dialog box DB1, and a printer object PB2 is displayed alongside PB object OB2 for selecting the second printer 200B. Figure 8 In the example shown in (d), the printer object PB2 is displayed hierarchically below the PA object OB2, making it appear as if the second printer 200B is managed by the second printer application 170B that manages printer group 2. The URL of the corresponding print setup screen is associated with the printer object PB2 as a link destination, and when the printer object PB2 is operated, the print setup screen of the second printer 200B is displayed (see below). Figure 7 It should be noted that the printer object PB2 is an example of a selection object, and the URL of the print setup screen is an example of an address used for the setup screen.

[0076] Figure 7 (a) to Figure 7 (d) shows an example of a dialog box displayed on the display unit 140 of the terminal device 100 when registering the third printer 200C of the printer group 2 in the second printer application 170B. Figure 6 (a) is with Figure 7 The same screen as (d) is displayed in dialog box DB1 via launcher 106, showing PA objects OB1 and OB2 and printer objects PB1 and PB2. Figure 7 In (a), when the PA object OB2 is manipulated, browser 104 is launched, and the URL of the link is displayed by HTTP server 176 via browser 104. Figure 7 The display screen of (b).

[0077] exist Figure 7 In (b), a dialog box DB3 is displayed as an additional settings screen for the printer relative to the second printer application 170B. The dialog box DB3 displays a printer display PI2 indicating the added second printer 200B, a printer display PI3 for selecting a third printer 200C that can be added, and an add button B3. Printer display PI3 displays the printer found by the second printer application 170B using mDNS. Printer displays PI2 and PI3 are displayed in different ways to distinguish whether the installation is complete or incomplete. Figure 7 When selecting the third printer 200C in (b) and operating the installation button B3, it switches to... Figure 7 (c)

[0078] Figure 7 (c) is also a screen displayed by HTTP server 176 via browser 104. Figure 7 In (c), dialog box DB4 is displayed as the installation screen for the third printer 200C. Dialog box DB4 displays an option to perform additional processing on the third printer 200C relative to the second printer application 170B, and an OK button B4. When in... Figure 7 When the OK button B4 is pressed in (c), browser 104 terminates and the launcher 106 displays... Figure 7 The display screen of (d).

[0079] exist Figure 8 In (d), PA objects OB1 and OB2 are displayed in dialog box DB1, and a printer object PB3 for selecting the third printer 200C is displayed attached to PB object OB2. Figure 8 In the example shown in (d), the printer object PB3 is displayed hierarchically below the PA object OB2, indicating that the third printer 200C is managed by the second printer application 170B, which manages printer group 2. The URL of the corresponding print setup screen is associated with the printer object PB3 as a link destination. When the printer object PB3 is operated, the print setup screen of the third printer 200C based on the printer application 170B is displayed via browser 104. It should be noted that the printer object PB3 is an example of a selected object, and the URL of the print setup screen is an example of a setup screen address.

[0080] Figure 8 (a) and Figure 7 (b) shows an example of a dialog box displayed on the display unit 140 of the terminal device 100 when the user selects the desired printer 200 and displays the print settings screen. Figure 8 (a) is with Figure 8 The same screen as (d) displays PA objects OB1 and OB2 and printer objects PB1, PB2, and PB3 via launcher 106 in dialog box DB1. In this dialog box DB1, the user can select any printer 200 by manipulating any of the printer objects PB1, PB2, and PB3. This dialog box DB1 is an example of a selection screen. Figure 8 When manipulating printer object PB2 in (a), browser 104 is launched, and the URL of the link is displayed via HTTP server 176. Figure 8 The display screen of (b).

[0081] Figure 8 (b) is the screen displayed via browser 104. Figure 8 In (b), dialog box DB5 is displayed as the print settings screen for the second printer 200B generated by printer application 170B. Figure 9 to Figure 14 In the example shown in (b), the URL of dialog box DB5 is, for example, http: / / localhost:8001 / Printer2. "8001" in the URL represents the port number of the HTTP server 176 of the second printer application 170B. In dialog box DB5, as part of the printing settings for the second printer 200B, list boxes LB1 (allowing selection of paper size), LB2 (allowing selection of paper type), and LB3 (allowing selection of paper storage location) are displayed. Figure 9 In the example shown in (b), A4 is set as the size of the paper to be printed, recycled paper is set as the type of paper to be printed, and tray 1 is set as the storage place for the printed paper. It should be noted that other items can also be set in the print settings screen.

[0082] When printer application 170 is installed and printer 200 has completed registration with each printer application 170, the above is displayed when the launcher 106 is started. Figure 9 The dialog box DB1 is shown in (a). Users can open the print settings screen of the corresponding printer 200 simply by manipulating the printer objects PB1, PB2, and PB3 corresponding to the desired printer 200 within this dialog box DB1. Thus, users can access the print settings screen of the desired printer 200 without managing port numbers or knowing which printer application 170 manages each printer 200.

[0083] <Control Process>

[0084] pass Figure 3 The flowchart below illustrates the control process executed by the initiator 106 to achieve the screen display described above. Figure 6 An example of a control process executed when the launcher 106 is started will be shown.

[0085] As shown in FIG. 10, in step S10, the launcher 106 reads in information related to the printer applications 170 installed in the terminal device 100 by checking the object port (8000 and subsequent) of the address (usually localhost) of the object terminal device 100. The read-in information includes, for example, the identification information of the installed printer applications 170, the port number of the HTTP server 176 of each printer application 170, and the URL of the print setting screen of the printer 200 registered in each printer application 170. Figure 10

[0086] In step S20, the launcher 106 displays a dialog DB1 on the display portion 140 of the terminal device 100 based on the information read in in the above-described step S10, the dialog DB1 displaying the link buttons of the installed printer applications 170 and the link buttons of the printers 200. In a state where the printer application has not been installed, display is made as shown in (a) of FIG. 11. In addition, in a state where the launcher 106 is started again after the above-described series of processes are ended, display is made as in (d) of FIG. 11. In addition, even in a case where the printer application 170 is installed alone without going through the launcher 106, display is made in the same manner. The link buttons are, for example, the above-described PA objects OB1, OB2 and the printer objects PB1, PB2, PB3. That is, in this step S20, the selection screen display data that causes the display portion 140 of the terminal device 100 to display the dialog DB1 in which a plurality of printers 200 corresponding to a plurality of printer applications 170 can be selected is output from the launcher 106 to the display portion 140. This step S20 is an example of a selection screen display process. Figure 10 Figure 11

[0087] In step S30, the launcher 106 acquires an event that has occurred. The event is an event corresponding to the above-described steps S100, S200, S300, S400, respectively.

[0088] In step S40, the launcher 106 executes a process corresponding to the event acquired in the above-described step S30. Thereafter, the above-described step S10 is returned to. In this way, steps S10 to S40 are repeated.

[0089] Figure 12 An example of a control process executed by the launcher 106 when the click event of the installation button B1, that is, step S100 has occurred will be shown.

[0090] As shown in FIG. 12, in step S100, the launcher 106 displays a dialog DB2 on the display portion 140 of the terminal device 100, the dialog DB2 displaying the link buttons of the installed printer applications 170 and the link buttons of the printers 200. In a state where the printer application has not been installed, display is made as shown in (a) of FIG. 13. In addition, in a state where the launcher 106 is started again after the above-described series of processes are ended, display is made as in (d) of FIG. 13. In addition, even in a case where the printer application 170 is installed alone without going through the launcher 106, display is made in the same manner. The link buttons are, for example, the above-described PA objects OB1, OB2 and the printer objects PB1, PB2, PB3. That is, in this step S100, the selection screen display data that causes the display portion 140 of the terminal device 100 to display the dialog DB2 in which a plurality of printers 200 corresponding to a plurality of printer applications 170 can be selected is output from the launcher 106 to the display portion 140. This step S100 is an example of a selection screen display process. Figure 13 ​​​As shown, in step S110, the launcher 106 causes the package-installed package dialog DB2 to be displayed on the display section 140 of the terminal device 100. The package dialog DB2 displays the packages in a selectable manner with respect to each of the plurality of printer applications 170 based on the operation of the installation button B1 in the aforementioned dialog DB1. Note that the operation of the installation button B1 described above is an example of a prescribed operation in the display section 140, and this step S110 is an example of package display processing.

[0091] In step S120, the launcher 106 receives selection of a package in the package dialog DB2 displayed in the aforementioned step S110, and performs installation of the package of the selected printer application 170. In the aforementioned step S110 and this step S120, installation is received with respect to each of the plurality of printer applications 170. The aforementioned step S110 and this step S120 are examples of installation reception processing.

[0092] In step S130, the launcher 106 updates the information related to the installed printer applications 170 stored in the database 107.

[0093] In step S140, the launcher 106 acquires the port number of the WEB server, i.e., the HTTP server 176, of the added printer application 170, and stores it in the database 107. The port number is an example of port information, and this step S140 is an example of port information storage processing.

[0094] Note that in the case where the package specified in step S120 is not a package of a printer application 170, the package is uninstalled as error exception processing, and the event correspondence processing ends (not shown).

[0095] In step S150, the launcher 106 updates the dialog DB1 in which the link button of the installed printer application 170 is displayed. That is, the dialog DB1 is updated in a manner that adds the link button of the printer application 170 installed in the aforementioned step S120. By the above, this flowchart ends.

[0096] Figure 14 An example of a control process performed by the launcher 106 when a button selection event of a printer application 170, i.e., step S200, occurs is shown. The button of the printer application 170 in this step S200 is, for example, the aforementioned PA object OB1, OB2.

[0097] In step S210, the launcher 106 reads and acquires the port number of the HTTP server 176 of the printer application 170 corresponding to the button on which the selection operation is performed, from the database 107. The port number of the printer application 170 is stored in the database 107 in step S140 described above at the time of installation. This step S210 is an example of port information acquisition processing.

[0098] In step S220, the launcher 106 starts the browser 104, and causes the display section 140 of the terminal device 100 to display an addition setting screen for adding the designated printer 200 to the printer application 170, based on a URL including the port number acquired in step S210 described above. In this step S220, display data that causes the addition setting screen to be displayed is output from the launcher 106 to the browser 104. The URL described above is, for example, http: / / localhost: The position of "http: / / localhost:8080" is the port number acquired in step S210 described above. That is, in this step S220, conversion to the addition setting screen of the printer 200 associated with the printer application 170 corresponding to the port number acquired in step S210 described above is performed. This step S220 is an example of printer addition screen conversion processing. With the above, the present flowchart ends.

[0099] Figure 9 to Figure 14 Indicates timer event processing performed by the timer at regular intervals (for example, one second).

[0100] In step S310, the launcher 106 performs processing with respect to the printer application 170 that is the processing target corresponding to the selected button. Details of the processing of this step S310 will be described later.

[0101] In step S320, the launcher 106 determines whether the execution of step S310 described above has ended with respect to all the printer applications 170 installed in the terminal device 100. The launcher 106 returns to step S310 in a case where the execution of step S310 described above has not ended with respect to all the printer applications 170 (step S320: No). On the other hand, the launcher 106 ends the present flowchart in a case where the execution of step S310 described above has ended with respect to all the printer applications 170 (step S320: Yes).

[0102] Figure 15 An example of the control procedure performed by the launcher 106 in the processing with respect to the printer application 170 that is the processing target in step S310 described above is shown.

[0103] ​In step S311, the launcher 106 reads and acquires the port number of the HTTP server 176 of the printer application 170 that is a processing target from the database 107. Then, the launcher 106 accesses the printer application 170 set as the processing target via the HTTP protocol based on the URL including the acquired port number. This step S311 is an example of information processing program access processing.

[0104] In step S312, the launcher 106 acquires information related to the managed printer and the URL of the print setting screen of the managed printer from the printer application 170 accessed in the above step S311. The above information related to the managed printer and the URL of the print setting screen of the managed printer are an example of the print device information related to the print device, and the URL is an example of the setting screen address to the print setting screen. This step S312 is an example of print device information acquisition processing.

[0105] In step S313, the launcher 106 updates (adds, deletes) the printer button corresponding to the information related to the managed printer acquired in the above step S312 to the dialog box DB1 in which the link button of the installed printer application 170 is displayed. The URL acquired in the above step S312 is associated with the printer button as a link destination. The printer button in this step S313 is, for example, the aforementioned printer objects PB1, PB2, PB3. By the above, this flowchart ends.

[0106] That is, in a case where the user displays the operation screen of the printer application 170 via the browser 104 by clicking the button of the printer application 170, and addition registration or deletion of the printer 200 is performed on the screen, the screen displayed by the launcher 106 is updated in step S313 of the timer event occurring thereafter.

[0107] Figure 15 An example of the control process executed by the initiator 106 when a printer button click event occurs, i.e., step S400, as described above. The printer button in step S400 is, for example, the aforementioned printer objects PB1, PB2, and PB3. It should be noted that in the printer button click event, a selection operation of one of the multiple printers 200 is accepted in the displayed dialog box DB1. Specifically, the dialog box DB1 displayed in the aforementioned step S20 includes multiple printer objects PB1, PB2, and PB3 for selecting each printer among the multiple printers 200. These multiple printer objects PB1, PB2, and PB3 are associated with the URLs of the corresponding print settings screens as link destinations (localhost:8000 / printer1, localhost:8000 / printer2, localhost:8000 / printer3), respectively. In step S400, a selection operation of one printer 200 is accepted by operating one of the multiple printer objects PB1, PB2, and PB3. This step S400 is an example of a selection acceptance process.

[0108] In step S410, the initiator 106 reads from the database 107 and obtains the URL of the print settings screen of the printer 200 corresponding to the clicked button.

[0109] In step S420, the launcher 106 launches the browser 104 and displays the print settings screen of the printer 200 corresponding to the clicked printer button on the display unit 140 of the terminal device 100 based on the URL obtained in step S410. In step S420, display data for displaying the print settings screen is output from the printer application 170 to the browser 104. In this step S420, processing is performed to display the print settings screen of the clicked printer 200 on the display unit 140 of the terminal device 100 using the printer application 170 corresponding to the clicked printer 200. Specifically, the print settings screen is displayed on the browser 104 of the terminal device 100 using the URL of the printer application 170 that received the click. The URL is, for example, http: / / localhost:8001 and printer2, representing the directory of the printer 200. Therefore, step S420 can be referred to as processing based on the port number corresponding to the printer application 170 that received the click. On this screen, the user can apply instruction 170 to the individual settings of the target printer 200. This step S420 is an example of the setup screen initiation process. This concludes the flowchart.

[0110] Note that, as described above, the second printer application 170B corresponds to the second printer 200B and the third printer 200C among the plurality of printers 200. Therefore, in a case where a button corresponding to the second printer 200B is clicked, in the above step S420, the launcher 106 causes the second printer application 170B to perform the process of displaying the print setting screen of the second printer 200B on the display section 140. In addition, in a case where a button corresponding to the third printer 200C is clicked, in the above step S420, the launcher 106 causes the second printer application 170B to perform the process of displaying the print setting screen of the third printer 200C on the display section 140. The second printer 200B is an example of the first printing device, and the third printer 200C is an example of the second printing device.

[0111] <Effects of Embodiments>

[0112] In the print system 1 of the present embodiment, when the launcher 106 is activated in the terminal device 100, the step S20, the step S400, and the step S420 are executed. In the step S20, the dialog box DB1 capable of selecting the plurality of printers 200 corresponding to the plurality of printer applications 170 is displayed on the display section 140 of the terminal device 100. In the step S400, the selection operation of one of the plurality of printers 200 is received in the displayed dialog box DB1. In the step S420, the process for causing one of the plurality of printer applications 170 corresponding to the one of the plurality of printers 200 received in the step S400 to display the print setting screen of the one of the plurality of printers 200 on the display section 140 of the terminal device 100 is executed.

[0113] According to the present embodiment, the user can cause the print setting screen of the desired printer 200 to be displayed on the display section 140 of the terminal device 100 by performing the operation of selecting the printer 200 in the dialog box DB1. Thus, the user can perform the print setting without accessing the printer application 170 corresponding to the desired printer 200, for example, by inputting the port number, the URL, or the like in the browser 104. Therefore, the user can execute the print setting based on the inherent print setting of the printer application 170 corresponding to the desired printer 200 without performing the process corresponding to the printer application 170.

[0114] In addition, in the present embodiment, in particular, in the step S420, the print setting screen is displayed via the browser 104 using the URL of one of the plurality of printer applications 170 corresponding to the one of the plurality of printers 200 received in the step S400. Thus, the user can omit the trouble of inputting the URL in the browser 104 in order to access the print setting screen, and thus the convenience of the user can be improved.

[0115] Furthermore, in this embodiment, in particular, by a simple operation of selecting one printer object from among the multiple printer objects PB1, PB2, and PB3 displayed in the dialog box DB1, the user can display the print settings screen of the printer 200 corresponding to the selected printer object on the display unit 140 of the terminal device 100. This improves user operability.

[0116] Furthermore, in this embodiment, in particular, the initiator 106 executes steps S110, S120, and S140. In steps S110 and S120, installation is accepted for each of the multiple printer applications 170. In step S140, during the installation of the multiple printer applications 170 accepted through steps S110 and S120, multiple port numbers corresponding to the multiple printer applications 170 are stored. Therefore, in step S420, by reading the port number corresponding to the printer application 170 that accepted the selection operation, the desired printer 200's print settings screen can be displayed based on a URL including that port number. Furthermore, since the port number corresponding to the printer application 170 during installation is automatically stored, user management of the port numbers is eliminated, improving convenience.

[0117] Furthermore, in this embodiment, in particular, step S110 is performed according to the user's specified operation on the display unit 140 of the terminal device 100, and packages are displayed on the display unit 140 in a selectable manner for each printer application among the multiple printer applications 170. Thus, by appropriately selecting from the displayed packages, the user can select and install the printer application 170 corresponding to the printer 200 that they wish to print from.

[0118] Furthermore, in this embodiment, especially as described above, after reading the port number stored in the database 107 in step S210, step S220 can be executed by using the read port number, and the conversion to the corresponding printer 200 additional setting screen can be performed smoothly.

[0119] Furthermore, in this embodiment, in particular, in step S311, the port number obtained as described above is used to access the printer application 170 that has become the target. Then, in step S312, information and URLs related to the managed printer associated with the printer 200 associated with the accessed printer application 170 are obtained. The obtained information includes the URL for the print setup screen. As a result, in step S313, printer objects PB1, PB2, and PB3 for selecting the printer 200 can be smoothly generated and displayed in a manner corresponding to the URLs obtained above.

[0120] Furthermore, in this embodiment, in particular, one printer application 170 can correspond to multiple printers 200. Regardless of which of the multiple printers 200 is selected, the corresponding printer application 170 performs processing to display the print settings screen for the selected printer 200. Thus, the user can select the desired printer 200 without knowing which printer 200 corresponds to which printer application 170.

[0121] <Variation Example>

[0122] It should be noted that the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from its spirit and technical concept.

[0123] For example, in the above embodiment, printer objects are displayed hierarchically in dialog box DB1, configured below PA objects, but this is not a limitation. Since the user does not need to know which printer application 170 corresponds to which printer 200, the printer 200 corresponding to each printer application 170 may not be displayed. For example, printer objects may be displayed side by side without displaying PA objects. However, the launcher 106 manages the correspondence between printer applications 170 and printers 200 independently of the display.

[0124] Furthermore, in the above embodiment, the launcher 106 causes the display unit 140 to directly display dialog boxes DB1 and DB2, and the printer application 170 causes the display unit 140 to display dialog boxes DB3, DB4, and DB5 via the browser 104, but this is not limited to this. For example, the printer application 170 may also directly display dialog boxes DB3, DB4, and DB5 on the display unit 140 without going through the browser 104. Alternatively, the launcher 106 may also display dialog boxes DB1 and DB2 on the display unit 140 via the browser 104. Furthermore, the distinction between the content directly displayed on the display unit 140 and the content displayed via the browser 104 may be set to something other than the above-described case.

[0125] Furthermore, in the above embodiment, the reading of the installed printer application 170 in step S10 is limited to the terminal device 100 itself, but printer applications 170 installed on other terminal devices can also be included as objects. Information about printer applications 170 installed on other terminal devices can be obtained through functions such as mDNS / SD.

[0126] It should be noted that the above Figure 9 to Figure 14 The flowchart shown does not limit the present invention to the process shown above. Processes may be added, deleted, or their order changed without departing from the spirit and technical concept of the invention.

[0127] In addition to the above-mentioned content, the methods of the above-described embodiments and various modifications can also be appropriately combined and utilized.

[0128] Furthermore, although not all examples are provided, the invention can be implemented with various modifications without departing from its spirit.

[0129] <Hardware Structure of Terminal Devices and Printers>

[0130] use Figure 15 This illustrates an example of the hardware structure of the terminal device 100 and the printer 200.

[0131] <Terminal Device>

[0132] like ​ As shown, 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. These components—processor 110, storage device 115, display unit 140, operation unit 150, and communication interface 190—are connected to each other via a bus 105 in a manner that enables them to send and receive data.

[0133] Storage device 115 includes volatile storage device 120 and non-volatile storage device 130. Volatile storage device 120 is, for example, DRAM, which stores various programs and data that are processed. Non-volatile storage device 130 is, for example, a hard disk drive or solid-state drive, which has a program storage area 131 and a data storage area 132.

[0134] Various programs are stored in program storage area 131. These programs include those based on the aforementioned... ​ The aforementioned printer application 170, print processing program, etc., are included in the flowcharts, etc. Data required for the execution of various programs is stored in the data storage area 132.

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

[0136] The display unit 140, such as an LCD, is capable of displaying various information. The operation unit 150, such as a mouse or keyboard, handles user operations. By operating the operation unit 150, the user can input various instructions into the terminal device 100.

[0137] Communication interface 190 is an interface used for communicating with other devices and connecting to a network NT. Communication interface 190 is an example of communication I / F.

[0138] It should be noted that the storage device 115 is not limited to the structure of the device elements described above. For example, it may be composed of removable recording media such as RAM, ROM, EEPROM, HDD, USB memory that is detachable from the terminal device 100, buffers provided by the processor 110, or combinations thereof.

[0139] It should be noted that storage device 115 can also be a computer-readable storage medium. Computer-readable storage media are non-transitory media. Besides the examples mentioned above, non-transitory media include recording media such as CD-ROMs and DVD-ROMs. Furthermore, non-transitory media are also tangible media. The same applies to storage device 215 of printer 200, which will be described later.

[0140] <Printer>

[0141] like ​ As shown, printer 200 includes processor 210, storage device 215, display unit 240, operation unit 250, communication interface 270, and printing unit 290. These components, including processor 210, storage device 215, display unit 240, operation unit 250, communication interface 270, and printing unit 290, are connected to each other via bus 205 in a manner that enables them to send and receive data.

[0142] Storage device 215 includes a volatile storage device 220 and a non-volatile storage device 230. The volatile storage device 220 is, for example, DRAM, and includes an image data storage area 222 for storing image data of the object to be printed. The non-volatile storage device 230 is, for example, NVRAM, flash memory, etc., and includes a program storage area 231 and a data storage area 232. Various programs are stored in the program storage area 231. These programs include firmware such as printing processing programs. Various data for executing these programs are stored in the data storage area 232.

[0143] Processor 210 is a device for performing data processing, such as a CPU. Processor 210 executes various programs stored in program storage area 231.

[0144] The display unit 240 is, for example, a liquid crystal display (LCD) capable of displaying various information. The operation unit 250 is a device that accepts user operations. The user can input various commands 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 a network NT.

[0145] The printing section 290 prints an image on the label tape 201 conveyed by the conveyance device 265. The printing section 290 prints an image on the label tape 201 in accordance with print data transmitted from the terminal device 100 or print data generated by itself based on an operation in the operation section 250.

[0146] Reference Signs

[0147] 1 Print system

[0148] 100 Terminal device (example of information processing device)

[0149] 101 OS (example of operating system)

[0150] 106 Launcher (example of virtual printer management program)

[0151] 107 Database

[0152] 110 Processor

[0153] 160 CUPS (example of OS standard print software)

[0154] 170 Printer application (example of information processing program)

[0155] 200 Printer (example of printing device)< / cups>

Claims

1. A virtual printer management program capable of being executed by an arithmetic unit of an information processing apparatus capable of connecting with a plurality of printing devices, wherein, The information processing apparatus has OS standard print software and a plurality of information processing programs, the OS standard print software is standardly mounted on an operating system, and is capable of performing driverless printing that does not use a driver provided by a printer vendor, the plurality of information processing programs are registered with the OS standard print software as virtual printers corresponding to the plurality of print apparatuses, The virtual printer management program is configured to cause an arithmetic unit of the information processing apparatus to perform the following processing: selection screen display processing that outputs selection screen display data that causes a display unit of the information processing apparatus to display a selection screen from which a print apparatus can be selected from among the plurality of print apparatuses corresponding to the plurality of information processing programs; selection reception processing that receives a selection operation of one of the plurality of print apparatuses in the displayed selection screen; and setting screen initiation processing that performs processing for causing one of the plurality of information processing programs corresponding to the one of the plurality of print apparatuses that was received in the selection reception processing to display a print setting screen of the one of the plurality of print apparatuses that was received in the selection reception processing on the display unit of the information processing apparatus.

2. The virtual printer management program according to claim 1, wherein the setting screen initiation processing is configured to cause a browser of the information processing apparatus to display the print setting screen using a setting screen address of the one of the plurality of information processing programs corresponding to the one of the plurality of print apparatuses that was received in the selection reception processing.

3. The virtual printer management program according to claim 2, wherein the selection screen displayed in the selection screen display processing includes a plurality of selection objects for selecting each of the plurality of print apparatuses, and for the plurality of selection objects, a setting screen address of a corresponding print setting screen is associated as a link destination, the selection reception processing receives the selection operation of the one of the plurality of print apparatuses by the one of the plurality of selection objects being operated.

4. The virtual printer management program according to claim 2 or 3, wherein the virtual printer management program is configured to cause the arithmetic unit to further perform the following processing: installation reception processing that receives installation of each of the plurality of information processing programs; and port information storage processing that stores a plurality of port information corresponding to the plurality of information processing programs when the plurality of information processing programs received in the installation reception processing are respectively installed, the setting screen initiation processing is based on one of the plurality of port information corresponding to the one of the plurality of information processing programs corresponding to the one of the plurality of print apparatuses for which a selection operation was received in the selection reception processing.

5. The virtual printer management program according to claim 4, wherein the plurality of port information corresponding to the plurality of information processing programs is configured to be information in URI format.

6. The virtual printer management program according to claim 4, wherein The installation reception processing is configured to execute a package display process that displays packages in a selectable manner for each of the plurality of information processing programs based on a predetermined operation in the display section, In the installation reception processing, a selection of the package displayed in the package display process is received.

7. The virtual printer management program according to claim 4, wherein the virtual printer management program is configured to cause the arithmetic section to further execute: a port information acquisition process that reads and acquires the port information stored in the port information storage process; and a printer addition screen conversion process that performs conversion to an addition setting screen of the print device associated with the information processing program corresponding to the port information acquired in the port information acquisition process.

8. The virtual printer management program according to claim 7, wherein the virtual printer management program is configured to cause the arithmetic section to further execute: an information processing program access process that accesses the information processing program as a processing target based on the port information acquired in the port information acquisition process; and a print device information acquisition process that acquires print device information related to the print device associated with the information processing program accessed in the information processing program access process, the print device information including a setting screen address to the print setting screen.

9. The virtual printer management program according to claim 1, wherein one of the plurality of information processing programs is configured to correspond to a first print device and a second print device among the plurality of print devices, in the setting screen activation process, in a case where a selection operation of the first print device corresponding to the one information processing program is received, the one information processing program performs a process for causing a print setting screen of the first print device to be displayed on the display section of the information processing device, in a case where a selection operation of the second print device corresponding to the one information processing program is received, the one information processing program performs a process for causing a print setting screen of the second print device to be displayed on the display section of the information processing device. ​

Citation Information

Patent Citations

  • Print server program and printing system

    JP2020160905A