Application program, method and information processing device

The application program addresses the limitations of V4 printer drivers by enabling secure print settings and UI prompts only when required, enhancing security and convenience in printing operations.

JP7625654B2Active Publication Date: 2025-02-03CANON KK
View PDF 9 Cites 0 Cited by

Patent Information

Application Number
JP2023120256
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-07-24
Publication Date
2025-02-03
Estimated Expiration
2038-05-07

AI Technical Summary

Technical Problem

In printing using the V4 printer driver, the lack of user notification and customization options, particularly for secure print functions, limits the ability to display UI prompts for password input, complicates inter-process communication, and restricts functional extensions.

Method used

An application program that sends print data to a vendor's printer, allowing the display of authentication information input prompts only when secure print is enabled, with settings remembered in XML format, and omitting these prompts when disabled.

Benefits of technology

Enables effective management of secure print settings and user interaction through customizable UI displays, enhancing security and convenience by ensuring prompts are shown only when necessary, thus improving the overall printing experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007625654000001
    Figure 0007625654000001
  • Figure 0007625654000002
    Figure 0007625654000002
  • Figure 0007625654000003
    Figure 0007625654000003
Patent Text Reader

Abstract

To provide a program capable of displaying a popup UI according to a situation such as password entry omission or the like for a printing job.SOLUTION: A program of an application that provides a GUI (Graphical User Interface) causes a computer to perform, by an operating system after a user instructs printing according to activation of the program of the application, a reception step for receiving a printing ticket including a printing setting, a determination step for determining whether or not to display a screen regarding the printing setting based on the received printing ticket, and a display control step for displaying the screen regarding the printing setting on a display unit according to the determining that the screen displaying the screen regarding to the printing setting in the determination step is displayed.SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to printing Application program, method and information processing device Regarding. [Background technology]

[0002] A commonly known configuration is to use a printer driver installed in a host computer as control software for an image forming device, and to print on an image forming device connected to the host computer. An operating system (hereinafter referred to as OS), which is basic software, is installed in the host computer, and the printer driver is configured according to the specifications defined by the OS. A vendor that provides an image forming device can obtain a means of issuing print instructions to the image forming device by providing a printer driver that conforms to the OS specifications.

[0003] When using a version of Microsoft® Windows® earlier than 8 as the host computer's OS, the printer driver is configured with an architecture called a V3 printer driver. A V3 printer driver can provide a function that displays a UI (User Interface) when a print request is made by the user and prompts the user to perform some operation. For example, when a print request is made, a specified event of the configuration module, which is a component of the V3 printer driver, is called, and the configuration module can display a user interface during the event processing.

[0004] Meanwhile, a new architecture called the V4 printer driver has appeared since Windows (registered trademark) 8. In the V4 printer driver architecture, security is emphasized, so the customizability of the printer driver itself is reduced. For example, the above-mentioned configuration module is provided by the OS, and vendors can only provide setting files and script files that customize its operation. To compensate for this reduced customizability, vendors who provide image forming devices can provide dedicated applications to assist the functions of the printer driver. These applications are called Windows Store Device Apps (WSDA).

[0005] Furthermore, in Windows (registered trademark) 10 and later, applications can be created in a new platform format called Universal Windows Platform (UWP). Such applications are called UWP Device Apps. UWP Device Apps extend the functionality of WSDA and can add an application called Workflow (WF) to WSDA.

[0006] With the WF function, a thread without a UI called a background task is generated by the OS during printing. The background task can also call a foreground task (UI). The image forming device also has a function that uses an authentication function called secure print (also called authenticated print). When using this function, the printer driver sends a print job with authentication information such as a password to the image forming device. The image forming device receives the print job with the authentication information added, and the printout becomes possible after the user authenticates on the image forming device. When this function is used, output does not start when a print instruction is issued, and output does not occur unless the user is authenticated by the image forming device, making it possible to output the printed matter safely without anyone seeing it. [Prior art documents] [Patent documents]

[0007] [Patent Document 1] JP 2015-166918 A Summary of the Invention [Problem to be solved by the invention]

[0008] In printing using a V4 printer driver, security and convenience are improved, but after a print request is made, the framework provided by the OS takes the lead in controlling the printing. Therefore, in the past, in printing using a V4 printer driver, it was not possible to notify the user with a UI or the like after issuing a print execution instruction. Therefore, even if a secure print function that performs identity verification by password authentication is selected, if the password is not entered, it is not possible to display a pop-up UI to prompt the user to enter the password. As in Patent Document 1, there is a proposal to display a pop-up when converting to print data. However, the XPS filter and V4 printer driver that are responsible for converting to print data need to perform inter-process communication and extensions such as control arbitration, which is cumbersome. In addition, since the pop-up is realized by a special extension, there are still functional limitations.

[0009] Books Claim 1 of the application In view of the above problem, the present invention provides an application program that performs a plurality of Printer Generates print data that can be printed by the vendor's printer and Printer Software that can send print data to a vendor's printer A Support, Information processing device a reception unit for receiving authentication information required for printing the print data generated by the software; When secure printing, which accepts authentication information that needs to be input and prints, is set to disabled, the reception section is not displayed, and when secure printing is set to enabled, the reception section is displayed on the computer, and options for enabling secure printing and options for disabling secure printing are stored in the print capability of the printer, which is described in XML format. R Providing a mechanism One of the objectives is to [Means for solving the problem]

[0010] In order to solve the above problems, Claim 1 of the application The application program can Printer generating print data printable by a printer of the vendor; Printer Software that can send print data to a vendor's printer A Support, Information processing device a receiving unit for receiving authentication information required for printing the print data generated by the software, on the computer; When a secure print that accepts the authentication information that needs to be input and prints is set to be invalid, the reception unit is not displayed, and when the secure print is set to be valid, the reception unit is displayed on the computer, and options for setting the secure print to be valid and options for setting the secure print to be invalid are stored in the print capability of the printer, which is described in an XML format. do. Effect of the Invention

[0011] Books Claim 1 of the application According to the invention, an application program includes: Printer Generates print data that can be printed by the vendor's printer and Printer Software that can send print data to a vendor's printer A and displaying a reception unit on the computer of the information processing device for receiving authentication information required for printing the print data generated by the software. When secure printing, which accepts authentication information that needs to be input and performs printing, is set to disabled, the reception section is not displayed, and when secure printing is set to enabled, the reception section is displayed on the computer, and options for enabling secure printing and options for disabling secure printing are stored in the print capability of the printer, which is described in XML format. It is possible. [Brief description of the drawings]

[0012] [Figure 1] FIG. 1 is a diagram illustrating a system configuration. [Diagram 2] FIG. 2 illustrates an example of a hardware configuration of a client computer. [Diagram 3] FIG. 2 illustrates an example of a software configuration of a client computer. [Figure 4] FIG. 13 is a diagram showing an example of metadata description. [Diagram 5] FIG. 2 is a block diagram showing an example of a printing environment constructed in the printing system. [Figure 6] 5 is a flowchart showing an example of a printing process according to the first embodiment. [Figure 7] 10 is a flowchart showing an example of a printing startup process according to the first embodiment. [Figure 8] 10 is a flowchart showing an example of a printing startup process according to the first embodiment. [Figure 9] 13A and 13B are diagrams illustrating an example of a print dialogue and a UI to be started when printing a warning. [Figure 10] 1 is a schematic diagram of a touch application and a print dialog. [Figure 11] FIG. 11 is a diagram illustrating an example of print capabilities. [Figure 12] FIG. 4 illustrates an example of a print ticket. [Figure 13] 13 is a diagram showing an example of definition items in a device function text file. FIG. [Figure 14] FIG. 4 is a schematic diagram illustrating a data flow during printing. [Figure 15] FIG. 13 is a diagram showing an example of a UI screen for selecting whether to display a pop-up. [Figure 16] 13 is a flowchart showing an example of a printing startup process according to the second embodiment. [Figure 17] 13 is a flowchart showing an example of a printing startup process according to the second embodiment. [Figure 18] 13 is a flowchart showing an example of a printing startup process according to the third embodiment. [Figure 19] 13 is a flowchart showing an example of a printing startup process according to the third embodiment. [Figure 20] 5 is a flowchart showing a print setting process according to the first embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0013] The best mode for carrying out the present invention will be described below with reference to the drawings and tables. The following embodiments do not limit the invention according to the claims, and all of the combinations of features described in the embodiments are not necessarily essential to the solution of the invention.

[0014] (First embodiment) First, the configuration of the system according to the present embodiment will be described with reference to FIG. 1. FIG. 1 is a schematic diagram showing an outline of the system configuration according to the present embodiment. The system according to the present embodiment includes a client computer 101, a server 104, and a printer 102. The client computer 101 is an example of an information processing device. The server 104 distributes data to the client computer 101. The printer 102 receives print data in a page description language (hereinafter referred to as PDL) format and performs printing. Each device can communicate with each other through a network 103 including a wide area network (WAN). The printer 102 may be a single-function printer having only a print function, or may be a multifunction printer having a print function, a scan function, and a copy function. The client computer 101 is not limited to one, and multiple computers may be connected to the network 103.

[0015] 2 is a block diagram showing a hardware configuration of the client computer 101 in FIG. 1. In the client computer 101, a central processing unit (CPU 201) controls each device connected to a system bus according to a program stored in a random access memory (RAM 202). The client computer 101 is assumed to include at least one CPU 201. In addition, the software configuration of the client computer 101 and the processing of each step of a flowchart described later are realized by the CPU 201 executing processing based on a program stored in an external memory 209. The RAM 202 functions as a main memory, a work area, etc. of the CPU 201. Various programs such as a boot program and a basic input / output system (BIOS) are written in a read-only memory (ROM) 203.

[0016] The operation input device interface (I / F) 204 is an interface that controls an operation input device 205 such as a keyboard, a pointing device (mouse), or a touch UI (User Interface). The operation input device 205 functions as a reception unit that receives operations from a user. The display I / F 206 controls display of a screen on a display 207. The display 207 functions as a display unit that displays information to a user. The external memory I / F 208 controls access to an external memory 209 such as a hard disk (HD) or a solid state disk (SSD). The external memory 209 stores an operating system program (OS) 210, an application execution environment 213, various applications 212 corresponding to the touch panel and desktop, various files, and the like. The external memory 209 functions as a storage medium that can be read by the client computer 101. The network I / F 215 is connected to the printer 102 via the network 103 and performs communication control processing. The server 104 also includes the same hardware configuration as the client computer 101 and operates in the same manner.

[0017] Next, the software configuration of the client computer 101 will be described with reference to Fig. 3. First, a description will be given of the operating software within the client computer 101. The software within the client computer 101 is composed of three layers: an OS 210, an application execution environment 213, and an application 212.

[0018] First, the individual elements constituting the OS 210 will be described. The OS 210 is broadly composed of a printing system 337, a printer driver 211, an external setting file group 352, and a thread pool 355. Next, Configuration File The elements constituting group 352 will be described. Configuration FileThe metadata 320 of the group 352 is definition information having identifiers of both the print extension application 300 and the print queue 308, and serves to associate them with each other. The metadata 320 will be described later with reference to FIG. 4. The registry 353 is an area in which a setting group of the OS 210 is written. In the registry 353, a setting as to whether or not the print start application launcher 350 described later starts the print start application 305, which is a background task, can be registered. A background task is a function available in UWP Apps ((Universal Windows Platform) applications). A background task is mainly used to realize processes such as keeping the app up to date and receiving update information even when the user is not operating the app. On the other hand, when an app runs in the background, it consumes battery and computing resources. Therefore, the OS 210 provides the user with a function for setting whether or not to permit the use of background tasks for each UWP App. In the registry 353, a setting as to whether or not to permit the use of background tasks for each application, which is set via the function, is registered.

[0019] Next, the elements that make up the printing system 337 will be described. The print queue 308 is an area that temporarily stores print jobs when printing is performed using a printer present in the network 103. In this embodiment, it is assumed that the print queue 308 of the printer 102 has been created. When the print queue 308 is created, a memory area 340 linked to the print queue is generated based on some of the functions described in the device function text file 332. The memory area 340 stores individual settings and functions for each print queue. This is because, by making specific descriptions in the function definition section of the device function text file 332, it is possible to provide functions that can be controlled for each print queue, rather than print setting functions that are switched for each job.

[0020] The spooler 325 is a module that temporarily stores and manages XPS (XML Paper Specification) files, which are data to be printed from the application 212. The XPS files stored in the spooler 325 are converted into PDL through a filter pipeline manager 335 (described later) and then transmitted to the printer 102 via the spooler 325.

[0021] The filter pipeline manager 335 is configured as a part of the OS 210, and the filter 330 is one of the elements that configure the printer driver 211, which will be described later. The filter pipeline manager 335 reads one or more filters 330 based on the definition of a filter config 336, and converts the XPS file stored in the spooler 325 into a PDL file.

[0022] The configuration module 331 is a module that has functions such as generating and modifying print tickets and correcting invalid settings. By calling the API (Application Programming Interface) of the configuration module 331, it is possible to obtain a print ticket, which is print setting information, and a print capability, which is device capability information. The print ticket and print capability are written in the Extensible Markup Language (XML) format.

[0023] A detailed print setting UI unit 304, a print-time startup application 305, and a print-time startup UI unit 303 of the print extension application 300 (described later) call the API of a configuration module 331 of the selected printer driver 211. This acquires a print ticket and print capabilities. A print-time startup application launcher 350 starts the print-time startup application 305 based on settings stored in a registry 353 when printing is performed from the application 212.

[0024] The printer driver 211 is composed of a filter 330, a filter config 336, a script file 333, a print setting UI 360, and a device function text file 332. The filter 330 is a module called by a filter pipeline manager 335, and has a role of converting an XPS file into a PDL. The filter config 336 is a definition file referred to by the filter pipeline manager 335, and describes the order in which the filter 330 is called. The script file 333 and the device function text file 332 in which the device functions are described customize the operation of the configuration module 331. The print setting UI 360 is a UI that provides a setting change function that operates in a desktop application execution environment 323 described later, and edits a print ticket, which is a print setting linked to the print queue 308. It is also possible to have an editing function for a memory area 340 linked to the print queue 308. The thread pool 355 is a module that accumulates threads used when various applications 212 and modules in the OS 210 are executed.

[0025] Next, a description will be given of the individual elements constituting the application execution environment 213. The application execution environment 213 is composed of a desktop application execution environment 323 and a touch application execution environment 301. The touch application execution environment 301 has a group of APIs for executing a touch application 321, which is a type of application 212 described later, and a print extension application 300, and also performs memory management when executing them. On the other hand, the desktop application execution environment 323 has a group of APIs for executing a desktop application 322, which is a type of application 212 described later, and also performs memory management when executing them.

[0026] Next, individual elements constituting the application 212 will be described. The application 212 is composed of three types of applications: a touch application 321, a print extension application 300, and a desktop application 322. The touch application 321 is a type of the application 212, and runs on a touch application execution environment 301. The touch application 321 is selected by the user himself through an application distribution system published on the Internet, and installed in the client computer 101. The print extension application 300 is a type of the touch application 321, and runs on the touch application execution environment 301 like the touch application 321. The print extension application 300 is acquired by the OS 210 from the application distribution system via the Internet, and installed in the client computer 101. The print extension application 300 is composed of a tile application unit 302, a detailed print setting UI unit 304, a print-time start application 305, and a print-time start UI unit 303.

[0027] The tile application unit 302 displays a tiled UI (for example, a GUI (Graphical User Interface)) when a user operation is performed to start the print extension application 300. The detailed print setting UI unit 304 displays a detailed print setting UI when a detailed print setting event is received from the OS 210. The detailed print setting UI unit 304 generates a detailed print setting UI based on a print ticket and print capability acquired from the configuration module 331 through an API. The detailed print setting UI unit 304 returns the print ticket to the configuration module 331 after changing the value of the print ticket according to a user input. The print start application 305 and the print start UI unit 303 provide a function called Workflow (WF) that executes a process related to printing when a predetermined user operation or the like is triggered. The print start application 305 is a component for executing a background task started by the print start application launcher 350 when a print event is issued. The print-time startup application 305 acquires a print ticket and reads and writes its contents through the API of the configuration module 331. The print-time startup application 305 determines whether to start the print-time startup UI unit 303, which is a component for executing a foreground task, from the print ticket settings and parameters, and requests the OS 210 to start the print-time startup UI unit 303.

[0028] When the print-time start application 305 determines not to start the print-time start UI unit 303, the print-time start application 305 proceeds to the print process described below without starting the print-time start UI unit 303. The print-time start application 305 also transfers print ticket settings and parameters to and from the print-time start UI unit 303 via the app store 334. The print-time start UI unit 303 acquires print tickets and print capabilities and changes settings. In this embodiment, the print-time start UI unit 303 displays a UI for checking printing and a UI for allowing the user to input settings that have not been input. Here, the printer 102, which is a device, and the print extension application 300 are associated with each other by metadata 320.

[0029] FIG. 4 is an example of the description of the metadata 320. FIG. 4(A) is an example of the description showing a list of device information associated with the print extension application 300. In the metadata 320, a HardwareIDList tag 402 showing a list of the printers 102 is described. Note that the Hardware ID is identification information for uniquely identifying the printer, which is returned from the printer. An item 403 represents the printer 102 having a Hardware ID of MFP1_abcd, and similarly, an item 404 represents the printer 102 having a Hardware ID of MFP2_ijkl. In this manner, a plurality of printers 102 to be associated with the print extension application 300 can be listed in one metadata 320. In this embodiment, as an example, the metadata 320 is illustrated as having the Hardware IDs of two printers, but is not limited thereto. There may be one, or three or more.

[0030] 4B, a DeviceCompanionApplications tag 411 indicating the print extension application 300 is described. An item 412 describes the ID and vendor ID of the print extension application 300. In this embodiment, a value of 1234abcd.MFPUtility represents the print extension application 300. And a value of 12345678-abcd-efgh-ijkl-123456789012 represents the printer vendor that provides the print extension application 300.

[0031] In this way, the printer 102, which is a device, and the print extension application 300 are associated with each other by the metadata in Figures 4(A) and (B). When the printer 102 is connected to the client computer 101, the OS 210 searches for metadata 320 registered in a specific server (a metadata server managed by Microsoft (registered trademark)). Then, when the OS 210 finds metadata 320 in which the HardwareIDList describes the Hardware ID returned by the connected printer 102, it saves it in the external memory 209 in which the client computer 101 is installed. Furthermore, the OS 210 adds the DeviceCompanionApplication tag of the saved metadata 320 to 411 The print extension application 300 described in is acquired from an application distribution system (not shown). The print extension application 300 is then installed in the external memory 209 and associated with the printer 102.

[0032] This makes it possible to start the print extension application 300 when a print request is made to the printer 102 via the printer driver 211. This metadata 320 is provided by the printer vendor. The printer vendor provides this metadata 320 in advance to a metadata server managed by Microsoft (registered trademark). This controls the automatic installation of the print extension application 300 that is optimal for the device connected to the user environment when the printer driver 211 is installed in the user environment.

[0033] 5 is a diagram showing an example of a printing environment constructed by metadata 320. MFP 501, which is printer 102, has a Hardware ID of MFP1_abcd. When MFP 501 is connected to client computer 101, OS 210 acquires metadata 320 in which Hardware ID MFP1_abcd is described in a HardwareIDList tag. Furthermore, OS 210 acquires print extension application 300, MFPUtility 506, described in metadata 320, and associates it with MFP 501.

[0034] Note that there may be multiple types of printer drivers installed in client computer 101 for MFP 501. In other words, there may be multiple printer drivers corresponding to MFP 501, which is one device. For example, model-specific printer driver 508 is a dedicated printer driver for MFP 501. Also, universal printer driver 509 is a printer driver that enables printing to multiple types of printers 102 with one printer driver. Note that model-specific printer driver 508 and universal printer driver 509 are drivers specific to each vendor. And standard printer driver 510 is a printer driver that enables printing to printers 102 of multiple vendors with one driver by using a standardized printing method. Standard printer driver 510 is provided together with OS 210 as one of the functions in the OS 210 package.

[0035] In this way, there are multiple printer drivers available for the printer 102, and the printer driver used varies depending on the Internet connection state, the type of OS 210, the usage environment, etc. Normally, the OS 210 refers to the version information of the printer drivers and automatically selects and installs the newest printer driver with the most advanced functions from among the available printer drivers. Note that the printer driver contains information for identifying the device, such as a Hardware ID and a Compatible ID. When a printer is connected to the client computer 101, the OS 210 obtains this ID information from the printer, searches for a printer driver having the corresponding ID, and installs it.

[0036] As described above, a printer vendor that provides a printer can control which print extension application 300 is provided for each printer by providing the metadata 320. For example, a printer vendor can provide one print extension application 300 common to a plurality of printers, or can provide different print extension applications 300 for each printer. However, it is not possible to provide different print extension applications 300 according to the type of printer driver 211 associated with one printer. In FIG. 5, there are three types of printer drivers 211 used by the MFP 501, drivers 508 to 510, but there is always one type of print extension application 300 that can cooperate with each driver.

[0037] Furthermore, in a user's printing environment, there are cases where a plurality of printers 102 or a plurality of types of printers 102 are used for different purposes. For each output destination printer 102, it is necessary to manage the model corresponding to the printer driver 211, the initial values ​​of print settings, and print jobs. For this reason, the OS 210 generates a print queue 308 as an object corresponding to the output destination printer 102 during installation. The OS 210 manages the configuration modules of the printer driver 211 and the initial values ​​of print settings in association with the print queue 308.

[0038] Here, it will be explained that the printer 102 has a secure print function (authentication print function) and how the print extension application 300 knows the function possessed by the printer 102. The printer 102 has a secure print function that requires the input of a password set in the client computer 101 when printing. The functions possessed by the printer 102 are described in a device function text file 332 of the printer driver 211. The print extension application 300 knows that the printer 102 has the secure print function by receiving a print capability generated by a configuration module 331 based on the device function text file 332. In addition, the print extension application 300 knows that the secure print function is set in the current print settings by reading a print ticket generated by the configuration module 331.

[0039] 11 is an example of a print capability generated by the configuration module 331 based on the device capability text file 332. The print capability shown in FIG. 1001 The list of capabilities of the printer driver 211 is shown in XML format. 1001 has multiple options in one Feature element. A Feature represents a function, and the options contained within that function represent choices. Print capability 1001 shows an example of secure print feature and option description in XML. The description of JobSecurePrint in the feature indicates that the secure print function is available. It also shows that there are two options for the JobSecurePrint feature: ns0000:SecurePrint, i.e. "On", which enables the function, and ns0000:None, i.e. "Off", which disables the function.

[0040] Next, Fig. 12 is an example of a print ticket generated by configuration module 331 based on user input. In the print ticket, one of the setting values ​​of each function in XML format defined in the print capabilities is stored as the current print setting. For example, the Feature element ns0000:JobSecurePrint shown in item 1101 indicates a secure print function that authenticates the identity of the user by entering a password. The Option included in the JobSecurePrint Feature is ns0000:SecurePrint, which indicates that the secure print function is set to on. Also, if ns0000:None is set in the same Option, the secure print function is not enabled. off This means that the Option is set to "ns0000:None". If nothing is set in this Option, the print startup UI unit 303 in this embodiment determines that this is equivalent to the case where Option is set to "ns0000:None". The psf:ParameterInit shown in item 1102 holds the value "XXXXXX" input as a password for personal authentication. This diagram shows an example in which secure printing is set to On when printing, a password is input, and the password value is held in the print ticket. If secure printing is set to On when printing but no password is input, the password value field will be left blank.

[0041] Next, a basic flow from the touch application 321 to printing will be described with reference to FIG. 6. Each operation (step) shown in the flowchart of FIG. 6 is realized by the CPU 201 reading into the RAM 202 a program for implementing each module, component, and application stored in the external memory 209 and executing it. When describing the control provided by each control module, component, and application, each unit implemented by the CPU 201 will be described as the subject. Also, some processing such as display, acceptance of user operations, and data transmission and reception processing will be realized by the CPU 201, each I / F, and an input / output device connected to the I / F in cooperation with each other. Note that in this embodiment, the description will be given using the touch application 321 (FIG. 10), but it goes without saying that printing can also be performed from the desktop application 322. FIG. 10(A) is a schematic diagram in which the touch application 321 is started. The touch application 321 lists a list of menu options when the menu control button 900 is tapped. Next, when a print item 901, which is one of the options in the menu, is selected by a user operation, the touch application 321 requests the OS 210 to display a print dialog, and displays the print dialog. FIG. 10B shows a print dialog for performing simple print settings generated by the OS 210. The print dialog includes a print setting section 920 and printing The print setting unit 920 is made up of an event generating unit 930. A list of simple print settings is displayed in the print setting unit 920. Reference numeral 921 denotes the name of the selected printer queue 308, and reference numeral 922 denotes an example of the print settings that have been set. The print dialog accepts user operations after being displayed, and generates a print event when a print button 932 in the print event generating unit 930 is pressed.

[0042] After a print event occurs, the touch application 321 generates an XPS file of the data to be printed, and starts the basic flow for printing, which will be described in FIG. 6. In this embodiment, a mechanism is provided that uses a workflow to display a confirmation UI or a UI for re-inputting settings after printing has started. A specific control method will be described using the basic flow for printing, which is illustrated in FIG. 6. Each application and module is stored in the external memory 209, loaded into the RAM 202 as necessary, and executed by the CPU 201 on the client computer 101. The flow shown in FIG. 6 starts when a print event occurs from the application 212. The application 212 that causes the print event may be the touch application 321 or the desktop application 322.

[0043] First, in step S601, the OS 210 passes the XPS file generated by the application 212 that has generated the print event to the spooler 325. Next, in step S602, the process of the print-time startup application 305 is executed. This process plays an important role and will be described later. Next, in step S603, the filter pipeline manager 335 passes the print ticket and the XPS file to the spooler 325. S602 The filter pipeline manager 335 obtains the XPS file from the spooler or the print-time startup application 305 depending on the result of the process in step S604. Next, in step S604, the filter pipeline manager 335 reads the filter 330 from the external memory 209 based on the definition of the filter config 336, and loads it in the RAM 202. Next, in step S605, the filter pipeline manager 335 passes the XPS file to the filter 330. In step S606, the filter 330 converts the XPS file into a PDL and passes the PDL to the spooler 325. Then, in step S607, the spooler 325 transmits the PDL to the printer 102.

[0044] Next, a basic print flow will be described with reference to FIG. 14. In this flow, printing from a desktop application 322 will be described. To start printing from a desktop application 322 with a print function, the user selects a print queue 308 linked to the destination printer 102. At that time, various function changes can be made by opening a print setting UI 360 of the printer driver 211 related to the target print queue 308. Change This can be done. For example, the setting can be changed to "double-sided setting" for printing on both sides of a sheet of paper, or "black and white" for printing the print result in monochrome. In an enterprise environment where multiple image forming devices are mixed, there is a demand for whether or not to display a pop-up UI for each image forming device. Therefore, in this embodiment, it is possible to control the pop-up display for each print queue linked to the image forming device. Specifically, a setting indicating whether or not to display a pop-up is stored in a storage area 340 linked to the print queue.

[0045] Next, a method for changing the setting will be described. The user can change the setting via a property screen displayed by the print setting UI 360 of the printer driver. FIG. 15 is an example of the property screen, illustrating a case where the setting item "Check user setting information when printing" is selected and a list of setting values ​​is displayed. The setting values ​​are "on" and "off". The user can change the setting by selecting a setting value from the list. The print setting UI 360, which detects that the user has performed an operation to change the setting, writes a specific description to the function definition section of the device function text file 332 based on this setting information. The printing system 337 changes the setting of the storage area 340 linked to the print queue associated with the printer driver based on the specific description.

[0046] A specific description will be given with reference to FIG. 13. The settings for each print queue are expressed by describing the *FeatureType:PRINTER_PROPERTY attribute (1201) for the Feature attribute. When "on" is set on the property screen, option 1203 indicating ON is described, and the description of option 1202 is erased. Also, when "off" is set on the property screen, option 1202 indicating OFF is described. The printing system 337 updates the settings in the memory area 340 by referring to this description.

[0047] Next, a specific control method of the change process will be described with reference to the flowchart in Fig. 20. Each operation (step) shown in the flowchart in Fig. 20 is realized by the CPU 201 reading into the RAM 202 a program for realizing each module, component, and application stored in the external memory 209 and executing it. When describing the control provided by each control module, component, and application, each unit realized by the CPU 201 will be described as the subject. Also, some processes such as display, acceptance of user operations, and data transmission and reception processing are realized by the CPU 201, each I / F, and an input / output device connected to the I / F in cooperation with each other.

[0048] First, in step S2001, the print setting UI 360 acquires setting information stored in association with the print queue, and displays a screen including the options exemplified in FIG. 15. Next, in step S2002, the print setting UI 360 transitions to a state in which it is ready to accept user operations, and accepts user input. Such input includes, for example, changing settings as to whether or not to use the secure print function. In step S2003, the print setting UI 360 checks whether input has been made by a user operation. ThatIf no input has been made, the process returns to step S2002. On the other hand, if input has been made, the process proceeds to step S2004. Next, in step S2004, the print setting UI 360 cooperates with the OS to store the setting information input in step S2002 in the storage area 340 associated with the print queue, and the process ends. Note that the secure print function stored in the print queue Use The setting as to whether or not to use the function is to be referred to in the flowchart described later.

[0049] Next, the print start processing will be described with reference to FIG. 7 to FIG. 9. Each operation (step) shown in the flowcharts of FIG. 7 and FIG. 8 is realized by the CPU 201 reading into the RAM 202 a program for implementing each module, component, and application stored in the external memory 209 and executing the program. When describing the control provided by each control module, component, and application, each unit implemented by the CPU 201 will be described as the subject. Also, some processing such as display, acceptance of user operations, and data transmission / reception processing is realized by the CPU 201, each I / F, and an input / output device connected to the I / F in cooperation with each other. First, in step S701, the OS 210 reads the setting of the registry 353. Next, in step S702, if the registry 353 is not set to start the print start application 305, the OS 210 skips a series of UI start processing and proceeds to data conversion and transmission processing from step S603 onward. On the other hand, if the registry 353 is set to start the print startup application 305, the OS 201 advances the process to step S703. Note that if the registry 353 is set to not use a background task, the series of UI startup processes is also skipped.

[0050] Next, in step S703, the OS 210 starts the print-time startup application launcher 350. After that, in step S704, the print-time startup application launcher 350 requests the OS 210 to start the print-time startup application 305 as a background task. Then, the touch application execution environment 301 loads the print extension application 300 in the RAM 202, thereby starting the print-time startup application 305. Next, in step S705, the print-time startup application 305 obtains the print ticket from the configuration module 331, analyzes the contents of the print ticket, and extracts what function settings and parameters are described from the analysis results.

[0051] Next, in step S713, the print-time startup application 305 acquires information on the storage area 340 associated with the print queue 308 corresponding to the image forming device used for printing. In this embodiment, setting information on whether or not to display a pop-up is acquired, and the process proceeds to step S714. In step S714, the print-time startup application 305 uses the setting information acquired in step S713 to determine whether or not to display a pop-up. If the determination result indicates that a pop-up is not to be displayed, that is, "OFF" is set, the OS 210 skips a series of UI startup processes and proceeds to the data conversion and transmission processes in and after step S603. If a pop-up is to be displayed, that is, "ON" is set, the process proceeds to step S706.

[0052] Then, in step S706, the print-time startup application 305 determines whether the functions extracted from the print ticket include a secure print function setting and are set to ON. If secure print is not set in step S706, the OS 210 skips a series of UI startup processes and proceeds to data conversion and transmission processes from step S603 onwards. If secure print is set in step S706 and is set to ON, the print-time startup application 305 issues a display request for the print-time startup UI unit 303 to the OS 210 in step S707. In step S708, the OS 210, having received the request, allocates a password input UI thread from the thread pool 355 in the OS 210 to the print extension application 300 and generates the print-time startup UI unit 303 of the print extension application 300.

[0053] Then, the print start UI unit 303 is displayed on the display 207. In this embodiment, in step S708, a password input screen shown in FIG. 9A is displayed. Then, in step S709, the print start UI unit 303 accepts a user operation. A text box 810 in FIG. 9A is a password input text box, and accepts a password input from the user. A button 811 is an OK button, and when an operation event such as a click is accepted, the password entered in the password input text box 810 is confirmed and reflected in the print ticket. When the input in the password input text box 810 is invalid or no input is made, the OK button 811 may not accept confirmation of the password by graying out the button or displaying a message. A button 812 is a cancel button, and when an operation such as a click is accepted, the printing is cancelled.

[0054] 8, upon receiving an input from a user operation, the print-time startup UI unit 303 closes the window and proceeds to step S711. Then, in step S711, the print-time startup application 305 acquires a print ticket and an XPS file from the print-time startup UI unit 303. Then, in step S712, the print-time startup application 305 transmits the acquired print ticket and XPS file to the filter pipeline manager 335.

[0055] As described above, according to this embodiment, the print-time startup application 305 analyzes the print ticket and prints according to whether the secure print function is enabled or disabled. time The display of the startup UI section is determined. Therefore, when the secure print function is enabled, it is possible to display a screen that forcibly prompts the user to input information. Furthermore, according to this embodiment, it is possible to switch whether or not to display a pop-up for each print queue linked to the image forming apparatus. Therefore, it is possible to display a screen according to the intention of the user or administrator.

[0056] Second embodiment In the first embodiment, printing is performed depending on whether the secure print function is enabled or disabled. time The mechanism for displaying a screen that forcibly prompts the user to input information by determining whether the startup UI section is displayed has been described. In this embodiment, the presence or absence of a parameter called a password is also determined. time The mechanism used to determine whether to display the startup UI section will be described below.

[0057] Specific processing according to this embodiment will be described with reference to Figs. 16 and 17. Each application and module is stored in external memory 209, loaded into RAM 202 as necessary, and executed by CPU 201 on client computer 101. Also, detailed description of numbers that have already been described will be omitted. Since the processing up to the start processing of print-time start application 305 shown in steps S1201 to S1204 is the same as steps S701 to S704 in Fig. 7 of the first embodiment, detailed description thereof will be omitted. Then, in step S1205, print-time start application 305 acquires a print ticket from configuration module 331, analyzes the contents of the print ticket, and extracts what function settings and parameters are described.

[0058] Next, step S1214 In step 3, the print start application 305 acquires information on the storage area 340 associated with the print queue 308. In this embodiment, setting information on whether or not to display a pop-up is acquired, and S1215 Continue to Step S1215 In the step S200, the print start application 305 S1214 Using the setting information acquired in step S1202, it is determined whether or not to display a pop-up. If a pop-up is not to be displayed, that is, if "OFF" is set, the OS 210 skips the series of UI startup processes and proceeds to the data conversion and transmission processes in step S603 and thereafter. If a pop-up is to be displayed, that is, if "ON" is set, the process proceeds to step S1206.

[0059] Then, in step S1206, the print-time startup application 305 determines whether the functions extracted from the print ticket include a secure print function setting and whether it is set to ON. If secure print is not set in step S1206, the OS 210 skips the series of UI startup processes and proceeds to data conversion and transmission processes from step S603 onwards. On the other hand, if secure print is set and set to ON in step S1206, the print ticket is checked in step S1207 to determine whether a password is included.

[0060] Then, if the print-time startup application 305 determines in step S1207 that there is no password in the print ticket, in step S1208, the print-time startup application 305 issues a display request to the OS 210 for the print-time startup UI unit 303. In step S1209, the OS 210 that has accepted the request allocates a password input UI thread from the thread pool 355 in the OS 210 to the print extension application 300, and generates the print-time startup UI unit 303 of the print extension application 300. Then, the print-time startup UI unit 303 is displayed on the display 207. In this embodiment, in step S1209, a password input screen shown in FIG. 9A is displayed. Then, in step S1210, the print-time startup UI unit 303 accepts a user operation.

[0061] 9A is a password input text box that accepts password input from the user. The OK button 811 is an OK button that, upon accepting an operational event such as a click, confirms the password entered in the password input text box 810 and reflects it in the print ticket. If the input in the password input text box 810 is invalid or no input has been made, the OK button 811 may not accept confirmation of the password by graying out the button or displaying a message. The button 812 is a cancel button that, upon accepting an operational event such as a click, cancels printing.

[0062] 17, upon receiving an input from a user operation, the print-time startup UI unit 303 closes the window and proceeds to step S1212. In step S1212, the print-time startup application 305 acquires a print ticket and an XPS file from the print-time startup UI unit 303. Then, in step S1213, the print-time startup application 305 transmits the acquired print ticket and XPS file to the filter pipeline manager 335.

[0063] As described above, according to this embodiment, the print-time startup application 305 analyzes the print ticket and determines whether to print based on the presence or absence of a parameter called a password, in addition to whether the secure print function is enabled or disabled. time This function determines whether to display the startup UI section. Therefore, it is possible to display the screen to the user only if the password for the secure print function is not entered correctly.

[0064] Third embodiment In the second embodiment, the presence or absence of a parameter called a password is also printed. time The mechanism used to determine whether or not to display the startup UI section has been described. In this embodiment, the presence or absence of a parameter called a password is used as a printing timeA mechanism for dynamically changing the type of screen displayed in the startup UI section will be described. Specific processing according to this embodiment will be described with reference to Figs. 18 and 19. Each application and module is stored in the external memory 209, loaded into the RAM 202 as necessary, and executed by the CPU 201 on the client computer 101. Also, detailed explanations of numbers that have already been explained will be omitted. The startup processing of the print-time startup application 305 shown in steps S1301 to S1304 is the same as steps S701 to S704 in Fig. 7 of the first embodiment, so detailed explanations will be omitted. Then, in step S1305, the print-time startup application 305 acquires a print ticket from the configuration module 331, analyzes the contents of the print ticket, and extracts what function settings and parameters are described.

[0065] Next, step S1316 In step 3, the print start application 305 acquires information on the storage area 340 associated with the print queue 308. In this embodiment, setting information on whether or not to display a pop-up is acquired, and S1317 Continue to Step S1317 In the step S200, the print start application 305 S1316 Using the setting information acquired in step S1302, it is determined whether or not to display a pop-up. If a pop-up is not to be displayed, that is, if "OFF" is set, the OS 210 skips the series of UI startup processes and proceeds to the data conversion and transmission processes in step S603 and thereafter. If a pop-up is to be displayed, that is, if "ON" is set, the process proceeds to step S1306.

[0066] Then, in step S1306, the print-time startup application 305 determines whether the functions extracted from the print ticket include a secure print function setting and whether it is set to ON. If secure print is not set in step S1306, the OS 210 skips the series of UI startup processes and proceeds to data conversion and transmission processes from step S603 onwards. On the other hand, if secure print is set and set to ON in step S1306, the print ticket is checked in step S1307 to determine whether a password is included.

[0067] Then, if the print-time startup application 305 determines in step S1307 that there is no password in the print ticket, in step S1308, the print-time startup application 305 issues a display request for the print-time startup UI unit 303 for warning to the OS 210. In step S1309, the OS 210 that has accepted the request allocates a password input UI thread from the thread pool 355 in the OS 210 to the print extension application 300, and generates the print-time startup UI unit 303 of the print extension application 300 in a warning screen. Then, the print-time startup UI unit 303 generated in the warning screen is displayed on the display 207. In this embodiment, the screen shown in FIG. 9B is displayed in step S1309.

[0068] On the other hand, if the print-time startup application 305 determines in step S1307 that the print ticket contains a password, then in step S1314 the print-time startup application 305 issues a request to the OS 210 to display the print-time startup UI unit 303 for confirmation. In step S1315, the OS 210 that has accepted the request allocates a password input UI thread from the thread pool 355 in the OS 210 to the print extension application 300, and generates the print-time startup UI unit 303 of the print extension application 300 on a confirmation screen. The print-time startup UI unit 303 generated on the confirmation screen is then displayed on the display 207.

[0069] In this embodiment, the screen shown in FIG. 9C is displayed in step S1315. The process after displaying the print-time startup UI unit 303 generated for warning or confirmation is common, and will be described using FIG. 9B. In step S1310, the print-time startup UI unit 303 accepts a user operation. The text box 820 in FIG. 9B is a password input text box, and accepts a password input from the user. The OK button 821 is an OK button, and when an operation event such as a click is accepted, the password entered in the password input text box 820 is confirmed and reflected in the print ticket. When the input in the password input text box 820 is invalid or no input is made, the OK button 821 may not accept confirmation of the password by displaying a grayed-out or message. The cancel button 822 is a cancel button, and when an operation such as a click is accepted, the printing is cancelled.

[0070] 19, upon receiving an input from a user operation, the print-time startup UI unit 303 closes the window and proceeds to step S1312. In step S1312, the print-time startup application 305 acquires a print ticket and an XPS file from the print-time startup UI unit 303. Then, in step S1313, the print-time startup application 305 transmits the acquired print ticket and XPS file to the filter pipeline manager 335.

[0071] As described above, according to this embodiment, the print-time startup application 305 analyzes the print ticket and determines whether or not printing is performed depending on the presence or absence of a parameter called a password. time It determines whether to display the startup UI section and dynamically changes the type of screen to be displayed, so that the user can be informed of the current situation.

[0072] (Other Examples) The present invention can also be realized by a process in which a program for implementing one or more of the functions of the above-described embodiments is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that implements one or more of the functions.

[0073] Although the preferred embodiments of the present invention have been described, the present invention is not limited to these embodiments, and various modifications and changes are possible within the scope of the gist of the present invention.

Claims

1. An application program, Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; The computer of the information processing device displaying a reception section for receiving authentication information required to be input for printing the print data generated by the software; When a secure print process is performed by accepting the authentication information that needs to be input and printing the document, the reception unit is not displayed when the secure print process is set to an inactive state, and when the secure print process is set to an active state, the reception unit is displayed on the computer. The option for setting the secure print to be valid and the option for setting the secure print to be invalid are stored in the print capability of the printer, which is described in an XML format.

1. An application program comprising:

2. An application program, Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; The computer of the information processing device displaying a reception section for receiving authentication information required to be input for printing the print data generated by the software; The authentication information accepted by the accepting unit is stored in a print ticket described in XML format.

1. An application program comprising:

3. An application program, Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; The computer of the information processing device displaying a reception section for receiving authentication information required to be input for printing the print data generated by the software; The application program is an application program corresponding to the Hardware ID acquired from the printer by the OS.

1. An application program comprising:

4. An application program, Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; The computer of the information processing device displaying a reception section for receiving authentication information required to be input for printing the print data generated by the software; The application program is an application program corresponding to the compatible ID acquired from the printer by the OS.

1. An application program comprising:

5. The software is software different from a common driver provided by a printer vendor.

5. The application program according to claim 1, wherein the application program is a program for executing a program.

6. The software generates the print data in PDL format from the XPS data.

6. The application program according to claim 1, wherein the application program is a program for executing a program.

7. having the computer display a message regarding the authentication information 7. The application program according to claim 1, wherein the application program is a program for executing a program.

8. The application program is started based on an event related to detailed print settings.

8. The application program according to claim 1, wherein the application program is a program for executing a program.

9. The authentication information is a password.

9. The application program according to claim 1,

10. The authentication information is authentication information that must be input to a printer to which the print data is to be sent in order to print the print data generated by the software.

10. The application program according to claim 1,

11. A method for controlling an information processing device, comprising: Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; a computer causes a display unit to display a reception unit for receiving authentication information required for printing the print data generated by the software; When a secure print process is performed by accepting the authentication information that needs to be input and printing the document, the reception unit is not displayed when the secure print process is set to an inactive state, and when the secure print process is set to an active state, the reception unit is displayed on the computer. The option for setting the secure print to be valid and the option for setting the secure print to be invalid are stored in the print capability of the printer, which is described in an XML format. A method comprising:

12. A method for controlling an information processing device, comprising: Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; a computer causes a display unit to display a reception unit for receiving authentication information required for printing the print data generated by the software; The authentication information accepted by the accepting unit is stored in a print ticket described in XML format. A method comprising:

13. A method for controlling an information processing device, comprising: an application program supports software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; a computer causes a display unit to display a reception unit for receiving authentication information required for printing the print data generated by the software; The application program is an application program corresponding to the Hardware ID acquired from the printer by the OS. A method comprising:

14. A method for controlling an information processing device, comprising: an application program supports software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; a computer causes a display unit to display a reception unit for receiving authentication information required for printing the print data generated by the software; The application program is an application program corresponding to the compatible ID acquired from the printer by the OS. A method comprising:

15. The software is software different from a common driver provided by a printer vendor.

15. The method according to any one of claims 11 to 14.

16. The software generates the print data in a PDL format from the XPS data.

16. The method according to any one of claims 11 to 15.

17. Having the computer display a message regarding the authentication information.

17. The method according to any one of claims 11 to 16.

18. The application program is started based on an event related to detailed print settings.

15. The method according to claim 13 or 14.

19. The authentication information is a password.

19. The method according to any one of claims 11 to 18.

20. The authentication information is authentication information that must be input to a printer to which the print data generated by the software is to be sent in order to print the print data.

20. The method according to any one of claims 11 to 19.

21. An information processing device, Supporting software capable of generating print data printable by printers of a plurality of printer vendors and transmitting the print data to the printers of the plurality of printer vendors; a display control means for displaying a reception section for receiving authentication information required to be input for printing the print data generated by the software by executing an application program supporting the software; the display control means causes the reception unit not to be displayed when a secure print for receiving the authentication information that needs to be input and printing is set to be disabled, and causes the reception unit to be displayed on the computer when the secure print is set to be enabled, The option for setting the secure print to be valid and the option for setting the secure print to be invalid are stored in the print capability of the printer, which is described in an XML format.

23. An information processing apparatus comprising:

Citation Information

Patent Citations

  • Information processing apparatus, method for controlling the same, installation method, and computer program

    JP2011186969A

  • Printing system and program

    JP2012108591A

  • Printing system, information processor and control method thereof, and program

    JP2015001829A

  • Program, information processing apparatus, information processing method, and information processing system

    JP2015166918A

  • Information processor, control method for information processor, and program

    JP2016110612A