Control method for information processing device, information processing device
Patent Information
- Application Number
- JP2025030140
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-02-27
- Publication Date
- 2026-09-08
AI Technical Summary
【0015】 本手段を用いることで、所望のデフォルト値が設定され、かつ署名を付したドライバを提供することができる。
Smart Images

Figure 2026142885000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing technique for customizing a printer driver. [Background Art]
[0002] For example, in an information processing apparatus having a printer driver installed therein, default values of print settings are stored in an area defined by a certain rule. Therefore, unless the value in that area is changed, any value intended by a user cannot be set as the default value.
[0003] It has also been implemented to have a setting item for changing a default value of print settings and a list of values desired to be set as the default value of print settings, and enable various settings through a user interface (UI). Some are provided with a function that allows a user to restore the setting to a standard setting without worrying about whether the setting item has been changed when changing the value of the setting item. For example, taking a certain printer driver as an example, there is a selection item called "restore default", and by selecting this item, each setting value can be restored to the default value of print settings.
[0004] However, the default values of print settings used in such a printer driver are predetermined values and cannot be changed to any values desired by the user. This is because the printer driver is created with default values of print settings specified when the printer driver is generated.
[0005] Therefore, if it is desired to arbitrarily set the default values of print settings, the setting needs to be performed when the printer driver is created. For example, it is necessary to create as many printer drivers as requested with values specified by each user used as the default values of print settings, or create printer drivers for all combinations of default values of print settings.
[0006] Alternatively, the printer driver could store arbitrary values specified by the user in addition to the default print settings. In this case, when the printer driver reads the default print settings, if a default print setting specified by the user exists, it will read and display that value instead.
[0007] However, loading the default values of various print settings for the user in this way requires a complicated process. Furthermore, this would require each user to understand the data structure of the print settings and to have a detailed understanding of the frequently changing specifications of the printer driver, neither of which is practical.
[0008] To address the above issues, a method has been provided, such as the one described in Patent Document 1, which allows for some restrictions on user operations from the printer driver's UI by customizing the printer driver.
[0009] Furthermore, a means is provided to display a settings screen that includes customizable items for the printer driver and to customize it using that settings screen (Patent Document 2). In this means, the configured items are registered as customized items, and these customized items are written to the UI-related data present in the printer driver set. Then, when the printer driver is started, the customized printer driver can be provided by reading this UI-related data.
[0010] However, depending on the operating system's printing system environment, it may be restricted to modify the driver set after installation. One technology that enables this restriction is digital signature technology. For example, if a driver set is digitally signed, and the driver set is modified as described in Patent Document 2, the OS will fail to verify the digital signature, and the printer driver's operation cannot be guaranteed.
[0011] In particular, Windows (registered trademark) requires a Microsoft (registered trademark) signature, and obtaining these signatures every time you customize something involves a lot of cumbersome work. [Prior art documents] [Patent Documents]
[0012] [Patent Document 1] Japanese Patent Application Publication No. 8-278871 [Patent Document 2] Japanese Patent Publication No. 2005-235173 [Overview of the Initiative] [Problems that the invention aims to solve]
[0013] It is desirable to provide a driver with the desired default values set and that is signed. [Means for solving the problem]
[0014] To achieve the above objective, the control method for an information processing device according to the present invention is a control method for an information processing device that provides a user terminal with a driver package for installing a driver to control an external device, and is characterized by comprising: a receiving step of receiving a specification of a first default value which will be selected when the job setting screen provided by the driver is launched from among the options for a predetermined setting item; and a generating step of generating a driver package which has a UI configuration data file containing the first default value and a catalog file signed by the driver provider. [Effects of the Invention]
[0015] By using this method, it is possible to provide a driver with desired default values set and signed. [Brief explanation of the drawing]
[0016] [Figure 1] It is a diagram showing the hardware configuration of a computer in this embodiment. [Figure 2] It is a block diagram showing the network configuration in this embodiment. [Figure 3] It is a diagram showing the software configuration of a driver installation package in this embodiment. [Figure 4] It is an example of a print setting UI in this embodiment. [Figure 5] It is a flowchart related to default setting processing of print settings in this embodiment. [Figure 6] It is an example of a driver download screen in this embodiment. [Figure 7] It is a flowchart related to customization processing in this embodiment. [Figure 8] It is an example of a customization input screen in this embodiment. [Figure 9] It is an example of a UI for setting default values of print settings in this embodiment. [Figure 10] It is an example of a UI for setting display state control in this embodiment. [Figure 11] It is an example of an approval screen when installing a vendor-signed driver in this embodiment. [Figure 12] It is an example of a customized print setting UI in this embodiment. [Figure 13] It is a data configuration diagram of a UI configuration data file in this embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0017] Figure 1 is a hardware configuration diagram of the computer 100 in this embodiment. A detailed description is set forth below.
[0018] A CPU 101 controls the entire apparatus in accordance with a program stored in a ROM 1021 or a RAM 1022 of a main storage device 102 or an auxiliary storage device 105.
[0019] RAM 1022 is also used as a work area when the CPU 101 performs various processing. The auxiliary storage device 105 stores applications 1051, printer drivers 1052, operating systems (hereinafter referred to as OS) 1053, etc. In the following explanation, the main memory 102 and the auxiliary storage device 105 will be collectively referred to as storage devices.
[0020] Input devices such as pointing devices 109, including mice and touch panels, and keyboards 108 are connected to the system bus 107 via the input I / F 103 and are devices used by users to give various instructions to the computer.
[0021] Output I / F104 is an interface for outputting data externally, and outputs data to output devices such as monitor 110.
[0022] Computer 100 is connected to printer 200 and server 300 via network 150 through communication interface 106. A common data system bus 107 facilitates data exchange between interfaces and modules. Computer 100 uses printer driver 1052 to output jobs to be executed by printer 200.
[0023] Note that computer 100 is an example of a user terminal, printer 200 is an example of an external device, and server 300 is an example of an information processing device. The external device may be a device other than a printer, such as a scanner, fax machine, or 3D printer, and the printer driver can also be replaced with a driver that corresponds to the external device.
[0024] Figure 2 is a network configuration diagram in this embodiment. A detailed explanation follows below.
[0025] Computer 100 can communicate with a printer 200 on the intranet and a server 300 on the internet via network 150. The application 1051 that computer 100 uses to communicate with server 300 is a web browser. A web browser is an application used to view web pages on the internet.
[0026] In this embodiment, the server 300 is a device for providing a driver installation package 400 for installing a printer driver 1052 corresponding to the printer 200 on the computer 100. The server 300 has the function of displaying to the user as a download site for providing the printer driver via a web browser (Figure 6).
[0027] Next, I will explain server 300.
[0028] Server 300 includes a download control unit 301, a display control unit 302, a communication control unit 303, a driver installation package acquisition unit 304, a definition file editing unit 305, and a driver package creation unit 306. Furthermore, Server 300 has a driver installation package storage unit 310 for storing the driver installation package 400. A printer driver download site is constructed using such Server 300.
[0029] When the communication control unit 303 is accessed using a URL from the web browser of the computer 100, it calls the display control unit 302.
[0030] When called, the display control unit 302 generates a display screen using information based on a URL and displays it on the monitor 110 via the web browser of the computer 100. In this embodiment, it displays a screen for downloading a driver installation package 400 corresponding to the printer 200, a screen for the user to customize the driver, and the like.
[0031] The driver installation package storage area 310 refers to the area where driver installation packages 400 compatible with various printers 200 are stored. Here, the driver installation package 400 will be explained using Figure 3.
[0032] The driver installation package 400 consists of an installation module 401, an installation configuration file 402, and a driver package 410. Furthermore, the driver package 410 consists of a UI module 411, a UI configuration data file 412, a command generation module 414, a group of driver configuration files 415, and a signed catalog file 413.
[0033] The installation module 401 has a means for installing the driver package 410 on the computer 100 using the information in the installation configuration file 402. The installation configuration file 402 contains information for installing the printer driver, such as the name of the print queue and the specification of the connection port. Based on this information, the installation module 401 can install the driver package 410 on the computer 100.
[0034] The driver package 410 contains the UI configuration data file 412 and the driver configuration files 415, which are necessary for installing the printer driver on the OS. These will be explained in order.
[0035] The UI module 411 provides the print settings UI 500 that the printer driver provides to the user. Figure 4 shows the print settings UI screen, illustrating the "standard settings" case as indicated by the combo box 501. Note that the combo box may also be referred to as a pull-down, control item, object, etc. The print settings UI screen is an example of a job settings screen.
[0036] On the print settings UI screen, settings items 502 to 506 are displayed as selectable. In Figure 4, for setting item 502, the "A4" setting is selected from multiple options.
[0037] In these default settings, the original document size (502) is "A4", the output paper size (503) is "Same as original size", the number of copies (504) is "1 copy", the print orientation (505) is "Portrait", and the page layout (506) is "1 page per sheet".
[0038] When the print settings UI screen is launched or the "Restore Defaults" button 507 is clicked, the print settings UI screen is displayed with the default values for various print settings selected. Note that buttons may also be referred to as control items or objects. For subsequent launches of the print settings UI screen, the screen may display with the settings selected based on the changes made during the previous launch.
[0039] The UI configuration data file 412 refers to a file containing information for configuring the UI module 411. Furthermore, in this embodiment, it also contains information on the default values of the print settings for various items.
[0040] The signed catalog file 413 is a file that guarantees the integrity and reliability of the files included in the digitally signed driver package 410. OS1053 checks the digital signature of this file during driver installation to confirm that the referenced files have not been tampered with or modified since they were signed.
[0041] If OS1053 determines that the files in driver package 410 have been modified after digital signing, it will abort the printer driver installation and issue a notification indicating that the installation failed.
[0042] The command generation module 414 reads the registry area during operation and executes processing related to print settings. The command generation module 414 also reads this device mode, generates PDL data with the corresponding print settings, and transfers it to the printer to initiate printing.
[0043] The driver configuration files 415 refer to INF files that contain information necessary for installation on OS1053, as well as various files for configuring the driver. The driver installation package acquisition unit 304 acquires the driver installation package 400 corresponding to the printer 200 selected by the user.
[0044] The definition file editing unit 305 edits and updates the definition file, which contains the default values for the UI configuration and print settings, located within the driver installation package 400 obtained by the driver installation package acquisition unit 304.
[0045] The driver installation package creation unit 306 replaces the definition file updated by the definition file editing unit 305 in the acquired driver installation package 400. This digitally signs the driver package 410 present in the driver installation package 400 and creates the driver installation package 400.
[0046] The download control unit 301 controls the download process when a user requests a download of the customized driver installation package created by the driver installation package creation unit 306.
[0047] Figure 5 is a flowchart illustrating the process of displaying the default print settings to the printer driver print settings UI 500, as shown in Figure 4, in the UI module 411 of this embodiment. Here, the default print settings are stored in a location according to the rules of the computer 100's basic system, and the default settings specified by the user, as described later, are stored in a different location from these default print settings.
[0048] First, when the UI module 411 receives a request to display the print settings UI 500 through user interaction, specifically using the application's function to open print settings, it starts processing in step S600.
[0049] Next, in step S601, when a request is made to retrieve the default values for the print settings, the UI module 411 proceeds to step S602 to check if the default values specified by the user are stored.
[0050] If the default value specified by the user is stored, the UI module 411 proceeds to step S603, retrieves the default value of the print setting specified by the user, and displays it in step S604. On the other hand, if the default value of the print setting specified by the user is not stored in step S603, the UI module 411 proceeds to step S605, retrieves the default value of the print setting that has been specified in advance, and displays it in step S604.
[0051] The display processing of the UI module 411 is then terminated. In this embodiment, the default values of the print settings specified by the user are stored in the printer driver's UI configuration data file 412.
[0052] Next, the flowchart in Figure 7 describes the means for generating and downloading the customized driver installation package 400.
[0053] First, the user accesses the URL of server 300 through a web browser to display the download site 650 shown in Figure 6, and then manipulates object 670 to start processing on server 300 in step S700.
[0054] In step S701, the display control unit 302 generates a UI for customization and outputs it to the computer 100 via the communication control unit 303. This allows the generated UI for customization to be displayed on a web browser.
[0055] For example, the driver package 410, as shown in Figure 8, lists the model names it supports and displays a UI that allows the user to change the default print settings for those models. In this embodiment, the UI displays the default settings 810 for changing the default settings, the 820 for controlling the display state of items, and the customization code 830.
[0056] Next, in step S702, the server 300 accepts the setting of custom items by user operation to the computer 100. Step S702 is an example of the acceptance process. These processes will be explained in order, starting with the default settings 810, the display state control of items 820, and the customization code 830.
[0057] First, pressing Default Settings 810 displays the print settings screen where you can change the default settings. Figure 9 shows an example of the print settings screen where you can change the default settings. This screen is displayed as a pop-up UI in a web browser, and you can change the default settings in the printer driver you are installing.
[0058] For example, the output paper size setting is done via a pull-down menu, listing the paper sizes available for compatible models, from which you can select the desired default output paper size. On the other hand, settings requiring a choice between two options can be toggled on or off. For example, conflicting functions such as color and black and white are controlled by toggling the button on or off. A toggle button is an example of an object (control item) that accepts settings.
[0059] In this embodiment, it is assumed that the user has selected the "Page Aggregation" setting to "4in1" via a pull-down menu and the "Color" setting to "Black and White" via a toggle button.
[0060] Next, pressing Item Display State Control 820 displays a UI for controlling the display items in the driver UI. Figure 10 shows an example of the display state control UI. This screen is displayed as a popup UI in a web browser and allows you to control the display state of print setting items in the printer driver being installed.
[0061] There are three display states for setting items: "Enabled," "Disabled," and "Hidden." "Enabled" means the item is displayed in the Print Settings UI500; "Disabled" means it is displayed in the Print Settings UI500 but grayed out so it cannot be changed; and "Hidden" means it is not displayed in the Print Settings UI500. This can be selected for each setting item using a pull-down menu. In this embodiment, it is assumed that "Page Layout" and "Color Mode" are set to "Disabled," and "Specify Magnification" and "Single-sided / Double-sided / Booklet" are set to "Hidden."
[0062] Next, we will explain customization code 830. Each time a customized driver set is created, the user can specify a different value as customization code 830. This allows the customized software or OS to use it as a criterion to determine whether the customized driver sets after installation are the same or different ones. Once these settings are accepted and button 840 is pressed, the server 300 proceeds to step S703.
[0063] Next, in step S703, the server 300 determines the customization settings that were previously configured by the user and decides whether it is necessary to generate a driver package.
[0064] For example, the system first checks if the user's customizations from the initial settings are the same as the customizations in the existing driver package (stored in driver installation package 400). If the same customizations are made, it checks if all the default values after customization are the same, and if they are, it determines that there is no need to generate a new driver package.
[0065] Furthermore, all default values may be compared with existing driver packages regardless of whether user customizations have been made. For example, it is possible to determine if a driver installation package 400 with the same default values as those listed in the UI configuration data file 412 has been previously generated and stored in the driver installation package storage unit 310. If a driver installation package 400 with the same default values as those listed in the UI configuration data file 412 is stored, that driver installation package 400 may be provided. In other words, driver package generation is not necessary.
[0066] If it is determined in step S703 that it is not necessary to generate a driver package, the server 300 proceeds to step S706. On the other hand, if it is determined that it is necessary to generate a driver installation package 400, the server 300 proceeds to step S704. If there are multiple driver installation packages 400 stored in the driver installation package storage unit 310, any of them can be reused if their default values are the same.
[0067] Next, in step S704, the server 300 generates the driver installation package 400. Specifically, it edits the UPD file, which is the UI configuration data file 412, and the inf file, which is part of the driver configuration file group 415 and is necessary for installation. Here, the process of modifying the UPD file, which is the UI configuration data file 412 in this embodiment, will be explained.
[0068] Figure 13 illustrates the data format of a UPD file.
[0069] As shown in Figure 13, a UPD file consists of a header 1310, an ID definition 1320, and data 1330. The header 1310 contains information about the UPD file itself, the data 1330 contains information for forming the UI, and the ID definition 1320 stores pairs of the ID of the data stored in data 1330 and the storage location (address) of the data. These pairs are stored in sets corresponding to the number of IDs.
[0070] In this embodiment, the definition file editing unit 305 modifies the data values corresponding to the IDs defined for customization. If the ID of the customization data to be used is not defined in the ID definition 1320, a new ID corresponding to that customization data is added to the ID definition 1320.
[0071] The UPD file exists for each printer driver. Therefore, customization is possible in the following cases: a customized driver set for one model can be used to further customize other models. For example, the settings of a driver set customized for one model can be used to customize a device of another model. Also, since ID definition 1320 uses a customization ID, it is possible to transfer the settings of a previously customized printer driver to a newer version of the printer driver.
[0072] The printer driver is implemented to read the edited UPD file during installation or initial startup, and to read the data 1330 stored in association with a predetermined ID in the ID definition 1320 of the UPD file. For example, suppose that the UPD file created by the definition file editing unit 305 contains an ID indicating "CUSTUMIZED" and address X as the data storage location within the ID definition 1320.
[0073] The customizable printer driver is pre-implemented to read the address corresponding to the ID information indicating "CUSTUMIZED" if it is stored in ID definition 1320 upon installation completion or initial startup. Therefore, upon installation completion or initial startup, if the UPD file's ID definition 1320 contains an ID indicating "CUSTUMIZED", this printer driver reads the corresponding data address X from that ID definition.
[0074] Next, the printer driver reads the actual driver configuration data from data 1330 at address X. Note that address X may be an absolute address, or the starting address of data 1330 may be stored in header 1310, and address X may be set to an offset address from the starting address of data 1330.
[0075] Once the definition file editing unit 305 has finished processing, the driver installation package acquisition unit 304 performs predetermined processing on the acquired driver installation package 400. These predetermined processing steps include, for example, updating the edited UI configuration data file 412, which is the UPD file, and updating the date of the inf file, which is part of the driver configuration file group 415 and is necessary during installation.
[0076] At this point, the driver package 410 files have been updated, making it impossible to guarantee their integrity and reliability, and the digital signature becomes invalid, causing the driver installation to fail. Therefore, the server 300 proceeds to step S705 to re-sign the created driver package 410 with a digital signature.
[0077] Next, in step S705, the server 300 signs the created driver package 410 again. In this embodiment, the server 300 uses a vendor guarantee certificate to provide the driver to attach an electronic signature to the catalog file of the driver package 410, and incorporates the signed catalog file 413 into the driver package 410. Then, the server 300 proceeds to step S706.
[0078] Next, in step S706, the server 300 makes the generated driver installation package 410 available for download. Then, in step S707, the server 300 completes the process of creating the customized driver installation package 410.
[0079] By following the steps in this flowchart, the user downloads and installs the customized driver installation package 410 on computer 100. This section describes the driver installation process using a vendor warranty certificate.
[0080] As mentioned earlier, if you are using Windows (registered trademark), it is desirable to apply Microsoft's digital signature. However, it is known that applying Microsoft's digital signature is a time-consuming and laborious process.
[0081] Therefore, in this embodiment, a certificate guaranteed by the vendor (provider) that provides the driver is used, but in that case, a screen like the one in Figure 11 is displayed to the user during printer driver installation. This is because OS1053 asks the user whether the vendor-guaranteed certificate is trustworthy, and once the user trusts it and installs it on computer 100, this screen will no longer be displayed.
[0082] Then, when the user requests the display of the print settings UI500, the print settings UI1200 will be displayed as described above, as shown in Figure 12.
[0083] By preparing the UPD file, which is the UI configuration data file 412, in this way, the customized printer driver automatically reads the UPD file created by the definition file editor 305 upon completion of installation or initial startup. This automatically presets the default values for the printer driver's print settings. Therefore, the operating environment for the customized printer driver can be easily constructed.
[0084] Additionally, the customized driver may display the custom code value 830 entered in S702, appended to the end of the driver version displayed in the "Version Information" tab of the driver UI.
[0085] Furthermore, although this embodiment describes the generation of a customized driver, the customized driver installation package 400 that has been generated can be uploaded and edited again in the same way by following the flow shown in Figure 7. This can be achieved by temporarily saving the customized driver in the driver installation package storage unit 310 and using the temporarily stored driver as the driver package to be loaded.
[0086] As described above, this embodiment makes it possible for anyone to easily generate and obtain a secure printer driver with default print settings and restricted settings.
[0087] <Other examples> The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions. [Explanation of Symbols]
[0088] 100 Computers 106 Communication I / F 110 Monitors 150 Networks 1051 Application 1052 Printer Driver 1053 OS 200 printers 300 servers 301 Download Control Unit 302 Display Control Unit 303 Communication Control Unit 304 Driver Installation Package Acquisition Section 305 Definition File Editing Department 306 Driver Package Creation Section 310 Driver installation package storage section 400 driver installation packages 410 driver package 411 UI Module 412 UI configuration data file 413 Signed catalog files 414 Command generation module 415 Driver configuration files 500 Print Settings UI 810 Default settings 820 items of display state control 830 Customization Code 1200 Customized print settings UI
Claims
1. A control method for an information processing device that provides a user terminal with a driver package for installing a driver to control an external device, A receiving step that accepts the specification of a first default value among the options for a predetermined setting item, which will be selected when the job setting screen provided by the driver is launched, A control method characterized by comprising a generation step of generating a driver package having a UI configuration data file containing the first default value and a catalog file signed by the driver provider.
2. A determination step to determine whether the first default value specified in the reception step is the same as the second default value described in the UI configuration data file of the driver package stored in the storage unit of the information processing device, If the determination step determines that the first default value and the second default value are the same, the system further includes a first output step of outputting the driver package stored in the storage unit of the information processing device to the user terminal. The control method according to claim 1, characterized in that the generation step is performed when the determination step determines that the first default value and the second default value are not the same.
3. The aforementioned storage unit contains multiple driver packages. In the determination step, if the second default value described in the UI configuration data file of at least one of the plurality of driver packages is the same as the first default value, it is determined that the first default value and the second default value are the same. The control method according to claim 2, characterized in that, in the first output step, a driver package having the UI configuration data file containing the same second default value as the first default value is output to the user terminal.
4. The control method according to claim 1, characterized in that the reception step receives the specification of the first default value from the user via the web browser of the user terminal.
5. The control method according to claim 1, further comprising a second output step of outputting the driver package generated in the generation step to the user terminal.
6. The driver package is included in the driver installation package. The control method according to claim 2, characterized in that the first output step outputs the driver installation package to the user terminal.
7. The driver package is included in the driver installation package. The control method according to claim 5, characterized in that the second output step outputs the driver installation package to the user terminal.
8. A program for causing the information processing device to execute the control method described in any one of claims 1 to 7.
9. An information processing device that provides a user terminal with a driver package for installing a driver to control an external device, A receiving means that accepts the specification of a first default value among the options for a predetermined setting item, which will be selected when the job setting screen provided by the driver is launched, An information processing apparatus characterized by having a generation means for generating a driver package having a UI configuration data file containing the first default value and a catalog file signed by the driver provider.
Citation Information
Patent Citations
Information processor and method
JP1996278871A
Information processing system, information processing method, and device driver
JP2005235173A