Program, control method, and information processing device.
The described mechanism facilitates rapid printer driver installation on client devices by determining shareability and generating installation data with certificate data, addressing the redundancy of confirmation screens in existing systems.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2024-10-11
- Publication Date
- 2026-04-23
AI Technical Summary
Existing print server systems require redundant confirmation screens during printer driver installations on client PCs, making the installation process cumbersome and time-consuming.
A mechanism that allows for the rapid installation of printer drivers by determining if the driver is shareable between a print server and a client device, generating installation data with certificate data, and installing it on the client device.
Enables quick installation of printer drivers on client devices while suppressing unnecessary confirmation screens, simplifying the installation process and reducing the need for additional monitoring applications.
Smart Images

Figure 2026068939000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a program, a control method, and an information processing apparatus.
Background Art
[0002] As a typical print control program for controlling a printer, for example, there is a printer driver for Windows (registered trademark). The driver set of the Windows printer driver includes a catalog file (CAT file). A digital signature can be given to the catalog file to prevent tampering of the driver (see Patent Document 1). A "digital signature" is data obtained by encrypting the hash value of a driver (file) to which the signature is given with a private key, and can prove that the driver has not been tampered with. Also, a certificate is given to the digital signature. By decrypting the private key with the public key in this certificate, the hash value can be extracted. Then, by comparing this hash value with the hash value of the actual catalog file, it becomes possible to prove the validity of the catalog file, that is, it becomes possible to verify that the contents of each file in the driver set have not been changed.
[0003] Also, there are cases where a printer driver is installed in an information processing apparatus such as a PC (personal computer). In this case, depending on the issuer of the digital signature given to the catalog file, a confirmation screen for confirming whether or not to perform the installation may be displayed. The display of such a confirmation screen is the same in a print server system, for example, where a host PC connected to a printer is used as a print server and a print instruction is given to the printer from a client PC via the print server. For example, in Microsoft's Point&Print (registered trademark), the print server transfers the printer driver installed in the print server to the client PC. Then, the client PC can install the printer driver transferred from the print server. [Prior art documents] [Patent Documents]
[0004] [Patent Document 1] Japanese Patent Publication No. 2014-48956 [Overview of the Initiative] [Problems that the invention aims to solve]
[0005] As mentioned earlier, print server systems sometimes display a confirmation screen during driver installation on client PCs. For example, even if permission is granted on the confirmation screen during driver installation on the print server, the confirmation screen may reappear during driver installation on the client PC. Therefore, permission for driver installation must be granted on each confirmation screen, making the permission (confirmation) process cumbersome. In other words, even if the intention to install the same driver on the client PC is clear, having the confirmation screen reappear is redundant.
[0006] This invention has been made in view of the above-mentioned problems. The object of this invention is to provide a mechanism that enables the rapid installation of printer drivers. [Means for solving the problem]
[0007] To achieve the above objective, the present invention provides a program for installing a printer driver, which is already installed in a first information processing device and is endowed with certificate data proving the validity of a digital signature, into a second information processing device that is communicably connected to the first information processing device, characterized in that the computer of the first information processing device is caused to execute a sharing determination step of determining whether the installed printer driver is set to be shareable with the second information processing device, and, if, as a result of the determination in the sharing determination step, the printer driver is determined to be set to be shareable, the computer is caused to execute a data generation step of obtaining the certificate data from the first information processing device and generating installation data that includes the certificate data and can be installed in the second information processing device. [Effects of the Invention]
[0008] According to the present invention, printer drivers can be installed quickly. [Brief explanation of the drawing]
[0009] [Figure 1] This is a schematic diagram showing the overall configuration of the printing system according to the first embodiment. [Figure 2] This is a block diagram showing the hardware configuration of the print server. [Figure 3] This is a block diagram showing the software configuration of the print server and client computers. [Figure 4] This is a sequence diagram showing the process (installation process) executed between the print server and the client computer. [Figure 5] This diagram shows the configuration of the printer driver installation set. [Figure 6] This is a diagram showing the screen displayed in the printing system. [Figure 7] This diagram shows the transitions in the screen displayed on the print server's display unit. [Figure 8]It is a diagram showing a screen displayed on the display unit of a print server. [Figure 9] It is a flowchart showing the processing executed by an installer. [Figure 10] It is a diagram showing the configuration of a distribution set distributed to a client computer. [Figure 11] It is a flowchart showing the processing executed by an automatic registration module. [Figure 12] It is a flowchart showing the processing executed by an installer according to the second embodiment. [Figure 13] It is a diagram showing a screen displayed on the display unit of a print server. [Figure 14] It is a diagram showing the configuration of a packaging module distributed to a client computer. [Figure 15] It is a flowchart showing the processing executed by a packaging module. [Figure 16] It is a diagram showing a screen displayed on the display unit of a client computer. [Figure 17] It is a flowchart showing the processing executed by an automatic registration module.
Modes for Carrying Out the Invention
[0010] Hereinafter, each embodiment of the present invention will be described in detail with reference to the drawings. However, the configurations described in the following embodiments are merely examples, and the scope of the present invention is not limited by the configurations described in each embodiment. For example, each part constituting the present invention can be replaced with any configuration that can exhibit the same function. Also, any configuration may be added. Further, any two or more configurations (features) in each embodiment can be combined.
[0011] <First Embodiment> The first embodiment will be described below with reference to Figures 1 to 11. Figure 1 is a schematic diagram showing the overall configuration of the printing system according to the first embodiment. As shown in Figure 1, the printing system 100 includes a print server (first information processing device) 1000, a printer 2000, and a client computer (second information processing device) 3000, which are connected to each other so as to be able to communicate. The method of connection is not particularly limited, and may be a wired connection or a wireless connection. Print instructions to the printer 2000 may be issued from the print server 1000 to the printer 2000 (hereinafter sometimes referred to as "the first case"). In addition, there may be cases where instructions are issued from the client computer 3000 to the printer 2000 via the print server 1000 (hereinafter sometimes referred to as "the second case"). In both the first and second cases, the printer driver that controls the printer 2000 must be installed on the print server 1000. Furthermore, in the second case, the client computer 3000 must also have the same printer driver installed as the printer driver installed on the print server 1000. This is because the print data generated by the application on the client computer 3000 needs to be mediated by the printer driver on the print server 1000 before it is input to the printer 2000. The application is not particularly limited and could be a word processing application or a spreadsheet application, for example. Also, in order for the printer driver on the print server 1000 to mediate the print data, the same printer driver on the client computer 3000 must be used to mediate the print data from the application.
[0012] Figure 2 is a block diagram showing the hardware configuration of the print server. The hardware configuration of the client computer 3000 is the same as that of the print server 1000. As shown in Figure 2, the print server 1000 includes a display unit 1010, an operation unit 1020, a storage unit 1030, a control unit 1040, a network communication unit 1050, and a USB communication unit 1060. The control unit 1040 has a CPU (Central Processing Unit) 1041 and memory 1042, and is the computer that controls the entire print server 1000. The display unit 1010 is composed of, for example, an LCD display, and displays various information. The operation unit 1020 has, for example, a mouse, keyboard, touch panel, etc., and receives instructions from users using the printing system 100. The storage unit 1030 has a storage medium such as a hard disk or SSD, and stores various software necessary for the operation of the print server 1000. The OS 1110A and printer drivers, which will be described later, are also stored in the storage unit 1030. The network communication unit 1050 is connected to a network and enables communication with external devices such as the printer 2000 and the client computer 3000. The USB communication unit 1060 enables communication with the aforementioned external devices via a USB connection. The print server 1000 and the printer 2000 are connected via the network communication unit 1050 or the USB communication unit 1060. In this embodiment, software processing is achieved by loading the software stored in the storage unit 1030 into the memory 1042 of the control unit 1040, and then executing it with the CPU 1041.
[0013] Figure 3 is a block diagram showing the software configuration of the print server and client computer. As shown in Figure 3, the print server 1000 has application 1100A and OS (Operating System) 1110A. This software is stored in the storage unit 1030 of the print server 1000. Application 1100A includes, for example, a document creation application and a spreadsheet application. Note that the installer 1210, which will be described later, is also included in application 1100A. OS 1110A is the software that controls the basic operation of the print server 1000. OS 1110A includes a driver installation control unit 1111, a driver store 1112, a certificate management unit 1113, and a certificate store 1114. The driver installation control unit 1111 controls the installation of a printer driver prepared outside of OS 1110A into OS 1110A. Here, "printer driver" refers to the software that controls the printer 2000 from the print server 1000. This printer driver is generally provided by the manufacturer of the printer 2000 or the vendor that supplies the printer 2000. Furthermore, "installing the printer driver in OS1110A" means adding the printer driver provided by the manufacturer or vendor to OS1110A, making the printer 2000 usable from the print server 1000 under the management of OS1110A. The driver installation control unit 1111 verifies the printer driver to be installed and stores it in the driver store 1112. In addition to the printer driver, the driver store 1112 also stores various drivers for controlling peripheral devices. The certificate management unit 1113 manages the certificates (certificate data) registered in OS1110A. The certificate store 1114 stores various certificates managed by the certificate management unit 1113 and used by OS1110A. Here, "certificate" refers to data that proves the legitimacy of a digital signature. A certificate includes a public key. This public key can be used to extract a hash value from the digital signature, thereby proving that the digitally signed printer driver (file) has not been tampered with.The information of the certificate is not particularly limited. For example, it includes the issuer of the certificate, the version information of the certificate, the serial number of the certificate, the public key, the expiration date of the certificate, and the like.
[0014] When using the printer 2000 on the client computer 3000, the "Point&Print" mechanism is utilized, and the printer driver already installed on the print server 1000 is installed on the client computer 3000. In Point&Print, by specifying the printer published on the print server 1000 from the client computer 3000, the printer driver on the print server 1000 is transferred to the client computer 3000. This printer driver is processed in the same manner as the driver installation process on the print server 1000 described above. As a result, it becomes possible to use the printer 2000 on the client computer 3000 as well.
[0015] As shown in FIG. 3, the client computer 3000 has an application 1100B and an OS 1110B. These software are stored in the storage unit 1030 of the client computer 3000. The application 1100B is, for example, a document creation application, a spreadsheet application, or the like, similar to the application 1100A. The OS 1110B is software that controls the basic operations of the client computer 3000. The OS 1110B has a driver installation control unit 1115, a driver store 1116, a certificate management unit 1117, and a certificate store 1118. The driver installation control unit 1115 performs control for installing the printer driver transferred from the print server 1000 into the OS 1110. Also, the driver installation control unit 1115 verifies the printer driver to be installed and stores it in the driver store 1116. The certificate management unit 1117 stores the certificate attached to the printer driver verified by the driver installation control unit 1115 in the certificate store 1118.
[0016] Figure 4 is a sequence diagram showing the process (installation process) performed between the print server and the client computer. As shown in Figure 4, in step S100, the driver installation control unit 1115 of the client computer 3000 connects to the shared printer (printer 2000 in this embodiment) shared with the print server 1000. The driver installation control unit 1115 then requests the print server 1000 to install the printer driver that controls printer 2000. At this time, the print server 1000 receives device information about the client computer 3000 (for example, the type of OS 1110B) via Point&Print. This allows the print server 1000 to determine the operating environment of the client computer 3000.
[0017] In step S101, the driver installation control unit 1111 of the print server 1000 copies the printer driver installation set 1200 (see Figure 5) stored in the storage unit 1030 of the print server 1000 to the client computer 3000. This copy process is performed by the driver installation control unit 1111 in cooperation with the driver installation control unit 1115 of the client computer 3000.
[0018] In step S102, the driver installation control unit 1115 of the client computer 3000 registers the printer driver copied in step S101 with the OS 1110B. The user can then operate the client computer 3000 to perform printing on the printer 2000 via the print server 1000.
[0019] Figure 5 shows the configuration of a printer driver installation set. The installation set 1200 shown in Figure 5 is provided by the manufacturer or vendor. The installation set 1200 is a group of files including an installer (EXE) 1210 and a driver set 1220. The installer 1210 is a program for installing the print driver and can cause the control unit 1040 of the print server 1000 to execute the processes (control methods) described later. The driver set 1220 includes a setup information file (INF) 1230, a catalog file (CAT) 1240, and a driver file (CAB) 1250. The catalog file 1240 includes a digital signature 1241. The digital signature 1241 includes a certificate 1242. In the hierarchical configuration shown in Figure 5, the certificate 1242 is included in the digital signature 1241, but this is not limited to this configuration. For example, the certificate 1242 and the digital signature 1241 may be in parallel hierarchies.
[0020] Users with administrator privileges can install driver file 1250. Driver file 1250 is a compressed file containing the printer driver and data files for controlling printer 2000. Setup information file 1230 contains the information necessary for installing driver file 1250. This information is not limited to the type of printer driver, but may include, for example, the type of printer driver, the version of the printer driver, the file name of catalog file 1240, the file name of driver file 1250, and the installation location of driver file 1250. Catalog file 1240 is used to verify the driver set 1220 during the installation of driver file 1250. Catalog file 1240 is used to determine whether or not driver file 1250 has been tampered with.
[0021] Figure 6 shows a screen displayed in the printing system. The security warning screen 1300 shown in Figure 6(a) is displayed on the display unit 1010 of the print server 1000. This display is performed by the OS 1110A of the print server 1000. When the API for driver installation is called, the OS 1110A obtains the filename of the catalog file 1240 contained in the setup information file 1230. Then, the OS 1110A refers to this catalog file 1240 and identifies the certificate 1242 corresponding to the digital signature 1241 contained in the catalog file 1240. The OS 1110A displays the security warning screen 1300 if this certificate 1242 does not exist in the certificate store 1114 of the OS 1110A. The security warning screen 1300 includes issuer information 1301, buttons 1302 and 1303, and a checkbox 1304. Issuer information 1301 is information about the issuer of the digital signature 1241, and can be, for example, the manufacturer name or vendor name. By pressing (operating) button 1302, OS1110A begins installing the printer driver with the issuer's digital signature 1241. Conversely, by pressing button 1303, OS1110A cancels the printer driver installation. In this way, the security warning screen 1300 allows the user to decide whether or not to install the printer driver. Checkbox 1304 allows the user to choose whether or not to always trust printer drivers with the same issuer's certificate 1242 as digital signature 1241. If button 1302 is pressed with checkbox 1304 checked, OS1110A stores (installs) the corresponding certificate 1242 in the certificate store 1114. Subsequently, the digital signature 1241 of the printer driver to be installed may be assigned the same certificate 1242 stored in the certificate store 1114. In this case, the display of the security warning screen 1300 is suppressed.On the other hand, if button 1302 is pressed with checkbox 1304 unchecked (OFF), OS 1110A will display the security warning screen 1300 again when installing a printer driver with the same certificate 1242. This redisplay of the security warning screen 1300 can prevent the installation of a printer driver signed by, for example, a suspicious publisher. In this embodiment, the printer driver installation is performed when button 1302 is pressed with checkbox 1304 checked (ON).
[0022] Figure 6(b) shows a security warning screen 1310, which is displayed on the display unit 1010 of the client computer 3000. The security warning screen 1310 is displayed when installing a printer driver from the print server 1000 to the client computer 3000. This display is performed by the OS 1110B of the client computer 3000. When the API for driver installation is called, the OS 1110B obtains the filename of the catalog file 1240 contained in the setup information file 1230 downloaded from the print server 1000. Then, the OS 1110B refers to this catalog file 1240 and identifies the certificate 1242 corresponding to the digital signature 1241 contained in the catalog file 1240. The OS 1110B displays the security warning screen 1310 if this certificate 1242 does not exist in the certificate store 1118 of the OS 1110B. The security warning screen 1310 includes a message 1311, a button 1312, a button 1313, and a checkbox 1314. Message 1311 is a message regarding the usage conditions of the shared printer and the trust of print server 1000 (computer AAA). By pressing button 1312, OS 1110B starts installing the printer driver. Conversely, by pressing button 1313, OS 1110B cancels the printer driver installation. In this way, the security warning screen 1310, like the security warning screen 1300, allows the user to decide whether or not to install the printer driver. Checkbox 1314 selects whether or not to display message 1311 thereafter. If button 1312 is pressed with checkbox 1314 checked, OS 1110B stores the corresponding certificate 1242 in the certificate store 1118. Subsequently, the printer driver to be installed may have the same certificate 1242 as the certificate 1242 stored in the certificate store 1114 attached to its digital signature 1241. In this case, the display of the security warning screen 1310 is suppressed.On the other hand, if button 1312 is pressed while checkbox 1314 is unchecked (OFF), OS 1110B will display the security warning screen 1310 again when installing a printer driver with the same certificate 1242. This redisplay of the security warning screen 1310 can prevent the installation of, for example, a printer driver signed by a suspicious publisher.
[0023] Figure 6(c) shows the security error screen 1320, which is displayed on the display unit 1010 of the client computer 3000. The security error screen 1320 is displayed when installing a printer driver from the print server 1000 to the client computer 3000. This display is performed by the OS 1110B of the client computer 3000. Similar to the display of the security warning screen 1310, the OS 1110B displays the security error screen 1320 if certificate 1242 does not exist in the certificate store 1118 of the OS 1110B. The security error screen 1320 includes message 1321 and button 1322. Message 1321 is a message indicating that it is not possible to connect to the supplied printer. Pressing button 1322 transitions from the security error screen 1320 to another screen.
[0024] Figure 7 shows the transitions in the screens displayed on the print server's display unit. Each screen shown in Figure 7 is displayed by the installer 1210 of installation set 1200, that is, when the installer 1210 of installation set 1200 is executed. This section describes the case where the installer 1210 is executed without certificate 1242 being stored in the certificate store 1114. As shown in Figure 7, the display unit 1010 of the print server 1000 displays the first screen 1410, the second screen 1420, the third screen 1430, the fourth screen 1440, the fifth screen 1450, and the sixth screen 1460 in order. The first screen 1410 is displayed when the installer 1210 is started. The first screen 1410 includes message 1411 and button 1412. Message 1411 is a message prompting the user to install the printer driver. Pressing button 1412 displays the second screen 1420.
[0025] The second screen 1420 contains message 1421. Message 1421 indicates that the system is detecting printers connected to the print server 1000 and controlled by the printer driver to be installed. When printer detection is complete, the third screen 1430 is displayed. The third screen 1430 contains list 1431 and button 1432. List 1431 displays the names and IP addresses of printers obtained through printer detection in list format. In Figure 7, as an example, list 1431 displays a printer with the name "PrinterA" and IP address "XXXX," and this printer is selected. This printer is assumed to be printer 2000. In this case, the printer driver to be installed is the printer driver that controls printer 2000. Then, by pressing button 1432 with printer 2000 selected, the fourth screen 1440 is displayed.
[0026] The fourth screen 1440 contains message 1441 and button 1442. Message 1441 is a message indicating that the installation of the printer driver that controls printer 2000 will begin. Pressing button 1442 displays the fifth screen 1450. The fifth screen 1450 contains message 1451. Message 1451 is a message indicating that the printer driver installation is in progress. The printer driver installation is performed by the installer 1210 calling the driver installation API provided by the driver installation control unit 1111 of OS 1110A. At that time, the installer 1210 specifies the setup information file 1230 in the driver set 1220. As mentioned above, certificate 1242 is not stored in the certificate store 1114. Therefore, the security warning screen 1300 is displayed. The timing of the display of the security warning screen 1300 can be, for example, before the fourth screen 1440, i.e., between the third screen 1430 and the fourth screen 1440, or after the fourth screen 1440, i.e., between the fourth screen 1440 and the fifth screen 1450. Then, once the printer driver installation is complete, the sixth screen 1460 is displayed.
[0027] The sixth screen, 1460, is displayed prior to the decision made in the sharing decision process described later. This sixth screen, 1460, is a selection screen where the user can choose whether or not to share the printer selected in list 1431 of the third screen, 1430. The sixth screen, 1460, includes a message, 1461, a button, and a checkbox, 1463. Message 1461 is a message indicating that the installation is complete. Checkbox 1463 allows the user to choose whether or not to use the printer selected in list 1431 of the third screen, 1430, as a shared printer. If button 1462 is pressed with checkbox 1463 checked (ON), the seventh screen, 1470, shown in Figure 8, is displayed. The seventh screen, 1470, is displayed prior to the decision made in the acquisition decision process described later. On the other hand, if button 1462 is pressed with checkbox 1463 unchecked (OFF), the seventh screen, 1470, is not displayed, and the process by the installer, 1210, ends.
[0028] Figure 8 shows the screen displayed on the print server's display unit. The seventh screen 1470 shown in Figure 8 is displayed when using a shared printer and is a notification screen that informs the user of the need to obtain a certificate when using the shared printer. The seventh screen 1470 includes message 1471, buttons 1472 and 1473. Message 1471 is a message that contains the necessary information for using the shared printer. As a necessary information, it states that in order to use the shared printer, the client computer 3000 must also install certificate 1242. By pressing button 1472, the user agrees to the contents of message 1471, the process according to the contents is executed, and the user transitions from the seventh screen 1470 to another screen. By pressing button 1473, the user does not agree to the contents of message 1471 and transitions from the seventh screen 1470 to another screen. In this way, on the seventh screen 1470, the user can choose whether or not to obtain certificate 1242 depending on the operation of button 1472 or button 1473.
[0029] Figure 9 is a flowchart showing the processes executed by the installer. Each process in the flowchart shown in Figure 9 is executed by the CPU 1041 of the print server 1000 after the installer 1210 stored in the storage unit 1030 of the print server 1000 is loaded into memory 1042. The program (installer 1210) based on the flowchart shown in Figure 9 is started when button 1462 on the sixth screen 1460 is pressed. As shown in Figure 9, in step S200, the CPU 1041 (installer 1210) of the print server 1000 makes a decision about the printer driver already installed on the print server 1000 (sharing decision step). This decision determines whether the printer driver installed on the print server 1000 is configured to be shareable between the print server 1000 and the client computer 3000. This decision is also made based on the selection status on the sixth screen 1460, i.e., whether or not the checkbox 1463 is checked. If checkbox 1463 is checked, it is determined that the installed printer driver is set to be shareable, and the process proceeds to step S201. On the other hand, if checkbox 1463 is not checked, it is determined that the installed printer driver is not set to be shareable, and the process terminates. In this case, the data generation process described later is omitted.
[0030] In step S201, the CPU 1041 displays the seventh screen 1470 on the display unit 1010 (display step).
[0031] In step S202, the CPU 1041 determines whether or not to obtain certificate 1242 on the client computer 3000, that is, whether or not it is necessary to export certificate 1242 for the client computer 3000 (acquisition determination step). This determination is made based on the selection state on the seventh screen 1470, that is, the operation on button 1472 or button 1473. If button 1472 is operated, it is determined that it is necessary to export certificate 1242, and the process proceeds to step S203. On the other hand, if button 1472 is operated, it is determined that it is not necessary to export certificate 1242, and the process ends. In this case, the execution of the data generation step is omitted.
[0032] In step S203, the CPU 1041 exports a certificate file 1521 (see Figure 10) from the digital signature 1241. Note that in the configuration shown in Figure 5, the driver set 1220 contains one digital signature 1241, but is not limited to this. For example, the driver set 1220 may contain multiple catalog files 1240, and each catalog file 1240 may contain one digital signature 1241. Each digital signature 1241 is different from the others. In this case, the digital signatures 1241 may be exported according to their type.
[0033] In step S204, the CPU 1041 generates a distribution set 1500 (see Figure 10) as installation data that can be installed on the client computer 3000 (data generation step). The distribution set 1500 is then stored in a predetermined directory (e.g., the desktop). The storage location of the distribution set 1500 may be a pre-configured directory or a directory arbitrarily configured by the user. After step S204 is executed, the process ends.
[0034] Figure 10 shows the configuration of the distribution set to be distributed to the client computer. The distribution set 1500 shown in Figure 10 is generated in step S204 as described above. The distribution set 1500 is also used on client computer 3000 for the purpose of using a shared printer. The distribution set 1500 includes an automatic registration module 1510 and a certificate set 1520. The certificate set 1520 includes the certificate file 1521 exported in step S203. The certificate file 1521 includes certificate 1522, which is the same certificate as certificate 1242, which was determined to require export in step S202. The automatic registration module 1510 is a module (e.g., a batch file) that installs all certificates 1522 included in the certificate set 1520 into the certificate store 1114. The certificate file 1521 is extracted from the catalog file 1240 included in the driver set 1220 of the installation set 1200. Note that in the configuration shown in Figure 10, the certificate set 1520 contains one certificate file 1521, but this is not limited to that. For example, the certificate set 1520 may contain multiple certificate files 1521. Also, the automatic registration module 1510 may be automatically generated when the distribution set 1500 is generated, or it may be included in the installation set 1200 beforehand.
[0035] After the distribution set 1500 is generated, it is sent from the print server 1000 to the client computer 3000 (transmission step). Then, the distribution set 1500 is stored, or rather, stored, in the storage unit 1030 of the client computer 3000 (storage step). As a result, the distribution set 1500 is ready for use by the client computer 3000.
[0036] Figure 11 is a flowchart showing the processes performed by the automatic registration module. Each process in the flowchart shown in Figure 11 is executed by the CPU 1041 of the client computer 3000 after the automatic registration module 1510, stored in the storage unit 1030 of the client computer 3000, is loaded into memory 1042. As shown in Figure 11, in step S300, the CPU 1041 (automatic registration module 1510) of the client computer 3000 retrieves the number of certificate files 1521 included in the certificate set 1520 of the distribution set 1500.
[0037] In step S301, CPU 1041 starts a loop process that repeats as many times as there are certificate files 1521 obtained in step S300.
[0038] In step S302, the CPU 1041 loads the certificate files 1521 included in the certificate set 1520, starting from the first certificate file 1521. The CPU 1041 then determines whether the certificate 1522 included in the loaded certificate file 1521 is already stored (installed) in the certificate store 1118. If the determination in step S302 is that the certificate 1522 is already stored, the CPU 1041 terminates the loop. On the other hand, if the determination in step S302 is that the certificate 1522 is not yet stored, the process proceeds to step S303.
[0039] In step S303, the CPU 1041 stores certificate 1522 in the certificate store 1114 (storage step). Note that the distribution set 1500 may contain multiple certificates 1242. In this case, for certificates 1242 that are the same as certificates 1242 already stored in the certificate store 1114, storage in the certificate store 1114 is omitted. This allows the storage step to be executed quickly.
[0040] In the printing system 100 configured as described above, the printer driver already installed on the print server 1000 can be installed on the client computer 3000. The printer 2000 controlled by this printer driver can then be used as a shared printer on the client computer 3000. Furthermore, prior to the installation of the printer driver on the client computer 3000, that is, prior to the use of the shared printer on the client computer 3000, the certificate 1522 is stored in the certificate store 1118. This suppresses the display of security warning screen 1310 (see Figure 6(b)) and security error screen 1320 (see Figure 6(c)). This suppression of screen displays allows the user to install the printer driver on the client computer 3000 without hesitation and to install the printer driver quickly. In addition, the configuration using Point&Print reduces the complexity of having to prepare a separate monitoring application, for example, to monitor print data, compared to a configuration that does not use Point&Print. Furthermore, because monitoring applications can be omitted, the printing system 100 can be configured more simply.
[0041] <Second Embodiment> The second embodiment will be described below with reference to Figures 12 to 17, focusing on the differences from the previously described embodiment, and omitting explanations of similar matters. Figure 12 is a flowchart showing the processes executed by the installer according to the second embodiment. The flowchart shown in Figure 12 is the same as the flowchart shown in Figure 9, except that step S1201 is executed between step S202 and step S203, and step S1202 is executed after step S204. As shown in Figure 12, if the decision in step S202 determines that the export of certificate 1242 is required, the process proceeds to step S1201. In step S1201, the CPU 1041 of the print server 1000 displays a password setting screen (setting screen) 1480 (see Figure 13) on the display unit 1010 of the print server 1000, which allows the user to set a password for the distribution set 1500 (display step). The display of the password setting screen 1480 is performed prior to the generation of the distribution set 1500 in step S204. After step S1201 is executed, the process proceeds to step S203.
[0042] Furthermore, after step S204 is executed, the process proceeds to step S1202. In step S1202, the CPU 1041 adds the password set on the password setting screen 1480 to the distribution set 1500 generated in step S204, and packages the distribution set 1500 and the password together. This ensures the security of the distribution set 1500 and limits the users who can use the distribution set 1500. Note that for packaging, OS standard functions such as Windows IExpress may be used. After step S1202 is executed, the process ends.
[0043] Figure 13 shows the screen displayed on the print server's display unit. The password setting screen 1480 shown in Figure 13 includes a message 1481, a password input field 1482, and a button 1483. Message 1481 is a message prompting the user to enter a password. The user can enter any password in the password input field 1482. By pressing the button 1483 while a password has been entered in the password input field 1482, the password is stored in the storage unit 1030 and step S203 is executed. In this embodiment, the password setting screen 1480 is a screen independent of the seventh screen 1470, but is not limited to this. For example, the seventh screen 1470 may include the same message 1481, password input field 1482, and button 1483 as the password setting screen 1480. Alternatively, the installer 1210 may be configured with conditions such as the types and number of characters that can be entered, and it may be determined whether the password entered in the password input field 1482 meets these conditions. Furthermore, if it is determined that the conditions are not met, a notification to that effect may be issued. In addition, the password setting screen 1480 may be configured to allow switching to display the password entered in the password input section 1482 in plain text.
[0044] Figure 14 shows the configuration of a packaged module distributed to a client computer. As shown in Figure 14, the packaged module 1530 contains a distribution set 1500 and a password 1540 assigned to the distribution set 1500. The packaged module 1530 is a module in which the distribution set 1500 and password 1540 are packaged into a single file (e.g., a self-extracting file). When the packaged module 1530 is unpackaged, the automatic registration module 1510 included in the distribution set 1500 is executed.
[0045] Figure 15 is a flowchart showing the processes performed by the packaged module. Each process in the flowchart shown in Figure 15 is executed by the CPU 1041 of the client computer 3000 after the packaged module 1530 stored in the storage unit 1030 of the client computer 3000 is loaded into memory 1042. As shown in Figure 15, in step S400, the CPU 1041 (packaged module 1530) of the client computer 3000 displays the password authentication screen 1600 (see Figure 16) on the display unit 1010.
[0046] In step S401, the CPU 1041 determines whether the password entered on the password authentication screen 1600 has been successfully authenticated. If the determination in step S401 is that the password authentication has been successful, the process proceeds to step S402. On the other hand, if the determination in step S401 is that the password authentication has not been successful, i.e., has failed, the process remains in step S401 and waits. If it is determined that the password authentication has failed, a notification to that effect may be issued, along with a notification prompting the user to re-enter the password on the password authentication screen 1600.
[0047] In step S402, the CPU 1041 unpackages the packaging module 1530 and extracts the distribution set 1500 from the packaging module 1530.
[0048] In step S403, CPU 1041 executes the automatic registration module included in distribution set 1500. After step S403 is completed, the process terminates.
[0049] Figure 16 shows the screen displayed on the client computer's display unit. The password authentication screen 1600 shown in Figure 16 includes a message 1601, a password input field 1602, and a button 1603. Message 1601 is a message prompting the user to enter the password to be authenticated. The password to be authenticated can be entered in the password input field 1602. By pressing the button 1603 while a password has been entered in the password input field 1602, authentication of the password entered in the password input field 1602 is performed. Based on this authentication result, the decision in step S401 is made.
[0050] Figure 17 is a flowchart of the process performed by the automatic registration module. The flowchart shown in Figure 17 is the same as the flowchart shown in Figure 11, except that step S304 is executed after step S303. As shown in Figure 17, after the loop processing is completed, the process proceeds to step S304. In step S304, the CPU 1041 (automatic registration module 1510) of the client computer 3000 deletes all files contained in the distribution set 1500. This prevents, for example, a user from retrieving the certificate file 1521 and distributing it to anyone other than a specific user. Note that the file deletion process may be performed by a function of OS 1110B, such as the Task Scheduler. After step S304 is executed, the process ends. Note that in step S303, the certificate 1522 is stored in the certificate store 1114, and the password is removed at that time. This ensures that the storage of certificate 1522 is carried out smoothly.
[0051] Although preferred embodiments of the present invention have been described above, the present invention is not limited to the embodiments described above, and various modifications and changes are possible within the scope of its gist. The present invention can also be realized by supplying a program that implements one or more of the functions of the above 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. Furthermore, the present invention can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.
[0052] Each embodiment of the disclosure includes the following programs, methods, and configurations. (Program 1) A program for installing a printer driver, which is already installed on the first information processing device and is endowed with certificate data proving the validity of a digital signature, onto a second information processing device that is communicatively connected to the first information processing device, The computer of the first information processing device, A sharing determination step of determining whether the installed printer driver is configured to be shareable with the second information processing device, A program characterized in that, if, as a result of the determination in the sharing determination step, it is determined that the printer driver is set to be shareable, it will execute a data generation step which involves obtaining the certificate data from the first information processing device and generating installation data that includes the certificate data and can be installed on the second information processing device. (Program 2) The computer is instructed to perform an acquisition determination step to determine whether or not to acquire the certificate data with the second information processing device, The program according to Program 1, characterized in that, in the data generation step, if it is determined as a result of the determination in the sharing determination step that the printer driver is set to be shareable, and if it is determined as a result of the determination in the acquisition determination step that the certificate data is to be acquired, then the program generates the installation data. (Program 3) The program according to Program 2, characterized in that, if the result of the determination in the acquisition determination step determines that the certificate data should not be acquired, the computer is instructed to omit the execution of the data generation step. (Program 4) The program according to Program 2 or 3, characterized in that, if the result of the determination in the sharing determination step determines that the printer driver is set to be shareable, the computer is instructed to perform a display step that displays a notification screen informing the computer of the need to acquire the certificate data, prior to the determination in the acquisition determination step. (Program 5) The notification screen is configured to allow the user to select whether or not to acquire the certificate data. The program according to Program 4, characterized in that the decision in the acquisition decision step is made based on the selection state on the notification screen. (Program 6) A program according to any one of Programs 1 to 5, characterized in that, as a result of the determination in the sharing determination step, if it is determined that the printer driver is not set to be shareable, the computer will omit the execution of the data generation step. (Program 7) Prior to the decision in the sharing determination step, a selection screen is displayed to select whether or not to share the printer which is connected to the first information processing device and controlled by the printer driver. The program according to any one of programs 1 to 6, characterized in that the decision in the sharing decision step is made based on the selection state on the selection screen. (Program 8) A program according to any one of Programs 1 to 7, characterized in that, after the execution of the data generation step, the computer is made to execute a transmission step of sending the installation data to the second information processing device, and a storage step of storing the installation data transmitted in the transmission step in the second information processing device. (Program 9) The installation data includes multiple certificate data, The program according to program 8, characterized in that, among the plurality of certificate data, the storage step is omitted for certificate data that is the same as certificate data already stored in the second information processing device. (Program 10) A program according to any one of Programs 1 to 9, characterized in that, in the data generation step, a password can be set for the installation data when generating the installation data. (Program 11) The program according to Program 10, characterized in that, prior to generating the installation data in the data generation step, the computer is instructed to perform a display step in which a setting screen is displayed in which an operation to set the password is performed. (Program 12) After the execution of the data generation step, the computer is made to execute a transmission step of sending the installation data to the second information processing device, and a storage step of storing the installation data transmitted in the transmission step into the second information processing device. The program according to program 10 or 11, characterized in that the password is released when the storage step is executed. (Method 1) A control method for controlling the installation of a printer driver, which is already installed in the first information processing device and is endowed with certificate data proving the validity of a digital signature, into a second information processing device that is communicatively connected to the first information processing device, A sharing determination step of determining whether the installed printer driver is configured to be shareable with the second information processing device, A control method characterized by comprising: a data generation step, in which, if the determination in the sharing determination step determines that the printer driver is set to be shareable, the printer driver obtains the certificate data from the first information processing device and generates installation data that includes the certificate data and can be installed on the second information processing device. (Configuration 1) An information processing device in which a printer driver is installed that has certificate data proving the validity of the digital signature, When the aforementioned information processing device is designated as the first information processing device, the second information processing device, which is connected to the first information processing device in a communicative manner, includes a program for installing the printer driver. The program is programmed into the computer of the first information processing device. A sharing determination step of determining whether the installed printer driver is configured to be shareable with the second information processing device, If, as a result of the determination in the sharing determination step, it is determined that the printer driver is set to be shareable, the information processing device is characterized by executing a data generation step which involves obtaining the certificate data from the first information processing device and generating installation data that includes the certificate data and can be installed on the second information processing device. [Explanation of Symbols]
[0053] 1000 Print Servers 1040 Control Unit 1210 Installer 1241 digital signatures 1250 driver files 1500 handout set Certificate 1522 2000 Printer 3000 client computers
Claims
1. A program for installing a printer driver, which is already installed in the first information processing device and is endowed with certificate data proving the validity of a digital signature, into a second information processing device that is communicatively connected to the first information processing device, The computer of the first information processing device, A sharing determination step of determining whether the installed printer driver is configured to be shareable with the second information processing device, A program characterized in that, if, as a result of the determination in the sharing determination step, it is determined that the printer driver is set to be shareable, it will execute a data generation step which involves obtaining the certificate data from the first information processing device and generating installation data that includes the certificate data and can be installed on the second information processing device.
2. The computer is instructed to perform an acquisition determination step to determine whether or not to acquire the aforementioned certificate data using the second information processing device. The program according to claim 1, characterized in that, in the data generation step, if it is determined as a result of the determination in the sharing determination step that the printer driver is set to be shareable, and if it is determined as a result of the determination in the acquisition determination step that the certificate data is to be acquired, the program generates the installation data.
3. The program according to claim 2, characterized in that, if the result of the determination in the acquisition determination step determines that the certificate data should not be acquired, the computer is instructed to omit the execution of the data generation step.
4. The program according to claim 2, characterized in that, if, as a result of the determination in the sharing determination step, it is determined that the printer driver is set to be shareable, the computer is instructed to perform a display step of displaying a notification screen that notifies the computer of the need to acquire the certificate data, prior to the determination in the acquisition determination step.
5. The notification screen is configured to allow the user to select whether or not to acquire the certificate data. The program according to claim 4, characterized in that the decision in the acquisition decision step is made based on the selection state on the notification screen.
6. The program according to claim 1, characterized in that, if the result of the determination in the sharing determination step determines that the printer driver is not set to be shareable, the computer omits the execution of the data generation step.
7. Prior to the decision in the sharing determination step, a selection screen is displayed to select whether or not to share the printer, which is connected to the first information processing device in a communicative manner and controlled by the printer driver. The program according to claim 1, characterized in that the decision in the sharing decision step is made based on the selection state on the selection screen.
8. The program according to claim 1, characterized in that, after executing the data generation step, the computer is made to execute a transmission step of sending the installation data to the second information processing device, and a storage step of storing the installation data transmitted in the transmission step into the second information processing device.
9. The aforementioned installation data includes multiple certificate data, The program according to claim 8, characterized in that, with respect to the multiple certificate data, the storage step is omitted for certificate data that is the same as certificate data already stored in the second information processing device.
10. The program according to claim 1, characterized in that, in the data generation step, a password can be set for the installation data when generating the installation data.
11. The program according to claim 10, characterized in that, prior to generating the installation data in the data generation step, the computer is instructed to perform a display step in which a settings screen is displayed in which an operation to set the password is performed.
12. After the execution of the data generation step, the computer is made to execute a transmission step of sending the installation data to the second information processing device, and a storage step of storing the installation data transmitted in the transmission step into the second information processing device. The program according to claim 10, characterized in that the password is released when the storage step is executed.
13. A control method for controlling the installation of a printer driver, which is already installed in a first information processing device and is endowed with certificate data proving the validity of a digital signature, into a second information processing device that is communicatively connected to the first information processing device, A sharing determination step of determining whether the installed printer driver is configured to be shareable with the second information processing device, A control method characterized by comprising: a data generation step, in which, if the determination in the sharing determination step determines that the printer driver is set to be shareable, the printer driver obtains the certificate data from the first information processing device and generates installation data that includes the certificate data and can be installed on the second information processing device.
14. An information processing device in which a printer driver is installed that has certificate data proving the legitimacy of a digital signature, When the information processing device is designated as the first information processing device, the second information processing device, which is connected to the first information processing device in a communicative manner, includes a program for installing the printer driver. The program is programmed into the computer of the first information processing device. A sharing determination step of determining whether the installed printer driver is configured to be shareable with the second information processing device, If, as a result of the determination in the sharing determination step, it is determined that the printer driver is set to be shareable, the information processing device is characterized by executing a data generation step which involves obtaining the certificate data from the first information processing device and generating installation data that includes the certificate data and can be installed on the second information processing device.
Citation Information
Patent Citations
System, control method therefor, control method for information processing apparatus, and program
JP2014048956A