Program, information processing device, control method, and storage medium

The program addresses OS-driven vendor driver installation restrictions by enabling users to manage and change settings, ensuring convenient operation and informed decision-making regarding driver installations.

JP2026036353APending Publication Date: 2026-03-05CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024138884
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-20
Publication Date
2026-03-05

AI Technical Summary

Technical Problem

Existing OS update systems restrict the installation of vendor drivers, making it difficult for users to identify the cause of installation failures, especially with features like Windows Protected Print Mode (WPP) enabling or disabling vendor printer drivers without user intent, leading to unexpected driver installation restrictions.

Method used

A program that includes a setting means to enable or disable a specific printing mode and a restriction means to manage software installation, providing notifications when restrictions are in place, allowing users to change settings and install vendor drivers as needed.

Benefits of technology

Enables users to conveniently operate devices by informing them of driver installation restrictions and allowing them to change settings to enable installation, enhancing user convenience in OS environments with imposed driver restrictions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026036353000001_ABST
    Figure 2026036353000001_ABST
Patent Text Reader

Abstract

To enable a user to perform operations more conveniently in an environment where restrictions on vendor drivers may be imposed by OS (operating system) settings. [Solution] The program disclosed herein installs specific software on an information processing device running an OS that has the function of setting whether to enable a specific printing mode, which is a function of the OS, and the function of restricting the installation of specific software that provides printing functions different from the printing functions of the OS when the specific printing mode is set to enabled.The program causes the computer to function to install the specific software when an operation to install the specific software is performed and the specific printing mode is set to disabled, and to display a specific notification regarding restrictions related to the specific software when an operation to install the specific software is performed and the specific printing mode is set to enabled.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a device driver installation technique. [Background technology]

[0002] There are automatic update systems in which computers such as personal computers (PCs) receive new OS update information from an OS (operating system) distribution server connected to a network such as the Internet and then upgrade their OS. Windows Update is an example of an automatic update system. When an OS is upgraded using such an automatic update system, the upgraded OS may restrict the installation of device drivers (hereinafter referred to as "vendor drivers") provided by third parties such as device vendors. In this case, even if a user attempts to install a vendor driver compatible with an older architecture using a device driver (hereinafter simply referred to as "driver") installer, the vendor driver may not be installed. In this case, the user may feel as if they have suddenly been unable to install the device driver, and it may be difficult for the user to identify the cause.

[0003] Patent Document 1 discloses a technology that, when installation of a certain version of a driver into an OS fails, outputs a message indicating the cause to notify the user. Specifically, the technology disclosed in Patent Document 1 refers to the date on which the driver was created, and if that date is newer than a reference date, it infers that the cause of the failure is that installation of that version of the driver is restricted by the OS. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Laid-Open No. 2017-162106 Summary of the Invention [Problem to be solved by the invention]

[0005] In the future, depending on the OS, installation of vendor drivers provided by third parties other than the OS vendor may be restricted regardless of the driver version in the current OS version or in newly released OS versions. It is also possible that the operation of already installed vendor drivers may be stopped. For example, Windows (registered trademark), an OS provided by Microsoft, is planning to introduce a new print mode called WPP (Windows Protected Print Mode). WPP includes a function to restrict the installation of vendor drivers for printers provided by third parties such as printer vendors (hereinafter referred to as "vendor printer drivers"), and a function to stop the operation of already installed vendor printer drivers.

[0006] When WPP is enabled, printing is only possible using the IPP (Internet Printing Protocol) class driver (hereafter referred to as the "standard printer driver") built into the OS. If the functionality of the standard printer driver is insufficient, a third-party Print Support Application (PSA) is automatically set up via the Microsoft Store.

[0007] If WPP is disabled by default, to enable it, the user must start Group Policy Manager and edit the WPP settings. If WPP is disabled by default, vendor printer drivers can be installed unless the user enables it. However, future OS upgrades may result in design changes that enable WPP by default. In such cases, WPP may become enabled regardless of the user's intention, causing the user to feel as if they have suddenly been unable to install vendor printer drivers, and it may be difficult for the user to identify the cause.

[0008] The present disclosure has been made in consideration of the above-mentioned problems, and aims to provide a technology that allows users to operate the device more conveniently in an environment where restrictions on vendor drivers may be imposed by OS settings. [Means for solving the problem]

[0009] The program disclosed herein is a program for installing specific software for providing a printing function different from the printing function of the operating system on an information processing device that operates on an operating system that has the functions of: a setting means for setting whether to enable a specific printing mode, which is a function of the operating system; and a restriction means for restricting the installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is set to enabled.The program functions as a control means that controls at least one computer to install the specific software on the information processing device when an operation for installing the specific software is performed and the specific printing mode is set to disabled, and controls at least one computer to display a specific notification regarding the restriction related to the specific software when an operation for installing the specific software is performed and the specific printing mode is set to enabled. [Effects of the Invention]

[0010] According to the present disclosure, a user can perform operations more conveniently in an environment where restrictions on vendor drivers may be imposed by OS settings. [Brief explanation of the drawings]

[0011] [Figure 1] 1 is a block diagram illustrating an example of a configuration of a system according to the present disclosure. [Figure 2] FIG. 2 is a block diagram showing an example of a hardware configuration of a PC according to the present disclosure. [Figure 3] FIG. 2 is a block diagram illustrating an example of a hardware configuration of a device according to the present disclosure. [Figure 4] FIG. 2 is a block diagram showing an example of a software configuration related to a device according to the first embodiment. [Figure 5] FIG. 2 is a diagram showing an example of a UI screen according to the first embodiment. [Figure 6]FIG. 10 is a diagram showing an example of a warning notification dialog according to the first embodiment. [Figure 7] 10 is a flowchart showing an example of the flow of an installation process using an installer according to the first embodiment. [Figure 8] 10 is a flowchart showing an example of the flow of an installation process using an installer according to the second embodiment. [Figure 9] 10 is a flowchart showing an example of the flow of an installation process using an installer according to the second embodiment. [Figure 10] FIG. 11 is a diagram showing an example of a warning notification dialog box according to the third embodiment. [Figure 11] 11 is a flowchart showing an example of the flow of an installation process using an installer according to the third embodiment. [Figure 12] 11 is a flowchart showing an example of a processing flow of a driver installing unit, an icon generating unit, and an application installing unit according to the third embodiment. [Figure 13] FIG. 10 is a block diagram showing the configuration of a setup application compatible with a device according to a fourth embodiment. [Figure 14] FIG. 11 is a diagram showing an example of a UI screen according to the fourth embodiment. [Figure 15] 13 is a flowchart showing an example of a processing flow from when a setup application is started to when it is terminated in the fourth embodiment. [Figure 16] FIG. 13 is a diagram showing an example of a UI screen according to the fifth embodiment. [Figure 17] 13 is a flowchart showing an example of a processing flow from when a setup application according to a fifth embodiment is started to when it is terminated. [Figure 18] FIG. 20 is a block diagram showing an example of the software configuration of a device 102 according to a sixth embodiment. [Figure 19] FIG. 20 is a diagram showing an example of a warning notification dialog according to the sixth embodiment. [Figure 20]13 is a flowchart showing an example of a processing flow from when an installer according to a sixth embodiment is started to when it is terminated. [Figure 21] 13 is a flowchart showing an example of a processing flow of a resident application according to the sixth embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0012] Preferred embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings. Note that the following embodiments do not limit the solution of the present disclosure. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the present disclosure.

[0013] <Embodiment 1> Fig. 1 is a block diagram showing an example of the configuration of a system according to embodiment 1. In the system shown in Fig. 1, a PC 101, a device 102, and a router 103 are communicably connected to one another via a network 104. These communicate with one another according to, for example, the TCP / IP (Transmission Control Protocol / Internet Protocol) protocol and UDP. The network 104 is communicably connected to an external network 105 via the router 103. The PC 101 is an example of an information processing device according to the present disclosure, and is not limited to a personal computer.

[0014] The device 102 is a peripheral device such as a printer, copier, facsimile, or scanner, or a device that combines the functions of these peripheral devices. The device 102 supports the TCP / IP protocol. The device 102 also supports the Web Services on Devices (WSD) protocol, a standard Windows network protocol that supports Universal Plug and Play (UPnP), and the Link-Local Multicast Name Resolution (LLMNR) protocol, which enables name resolution of nearby network devices. The WSD and LLMNR functions of the device 102 can be enabled or disabled by a user directly operating the device 102. The router 103 has a Dynamic Host Configuration Protocol (DHCP) server function and assigns IP addresses to the PC 101 and the device 102.

[0015] FIG. 2 is a block diagram showing an example of the hardware configuration of the PC 101 according to the first embodiment. The PC 101 includes a monitor 201, a CPU 202, a ROM 203, a RAM 204, an auxiliary storage device 205, a keyboard 206, a pointing device 207, and a network board 208. The above-described hardware components of the PC 101 are connected to each other via a bus 209 so as to be able to communicate with each other. The monitor 201 displays a user interface (UI) for installed application software (hereinafter referred to as an "installer") and a driver. The CPU 202 loads programs such as installers and drivers stored in the ROM 203 or the auxiliary storage device 205 into the RAM 204 and executes the loaded programs. The ROM 203 stores basic software such as BIOS and various programs for implementing processes executed by the PC 101. The RAM 204 is used as a work area for the CPU 202 and temporarily stores software (programs) such as installers and drivers, as well as data used by the software.

[0016] The auxiliary storage device 205 is configured with a hard disk or the like, and stores software (programs) such as an OS, an installer, drivers, and various modules. The drivers stored in the auxiliary storage device 205 include device drivers such as a scanner driver, a printer driver, and a facsimile driver that control the device 102. The drivers stored in the auxiliary storage device 205 also include a display control driver that controls the display on the monitor 201, a keyboard driver that controls the keyboard 206, and a pointing device driver that controls the pointing device 207. The drivers stored in the auxiliary storage device 205 also include a network driver that controls communication with a network board 208.

[0017] The installer stored in the auxiliary storage device 205 has a search function for the device 102 using TCP / IP. The search function may be realized by the installer calling and executing a module having the search function. The keyboard 206 and pointing device 207 are operation input devices that accept operations from the user and input signals corresponding to the operations to the CPU 202. The network board 208 communicates with the device 102 via the network 104.

[0018] FIG. 3 is a block diagram showing an example of the hardware configuration of the device 102 according to the first embodiment. Specifically, FIG. 3 shows an example of the hardware configuration when the device 102 is a printer. The device 102 includes a CPU 301, a ROM 302, a RAM 303, a communication unit 304, a recording unit 305, an operation unit 306, and a display unit 307. The above-described hardware components constituting the device 102 are connected to each other via a bus 308 so as to be able to communicate with each other. The CPU 301 is, for example, a microprocessor. The CPU 301 functions as the central processing unit of the device 102. The CPU 301 loads programs stored in the ROM 302 into the RAM 303 and executes the loaded programs to control the communication unit 304, the recording unit 305, the operation unit 306, and the display unit 307. The ROM 302 stores various programs for realizing processes executed by the device 102. The RAM 303 is used as a work area for the CPU 301 and temporarily stores various data used by the various programs.

[0019] The communication unit 304 communicates with other devices 102 via the network 104. The recording unit 305, for example, prints image data on a recording medium such as paper. The operation unit 306 is configured with an operation input device such as a button or a touch panel. The display unit 307 displays a screen for operating the device 102 and various information related to the device 102. Note that if the device 102 is a device other than a printer, the device 102 includes other hardware components instead of or in addition to the recording unit 305. For example, if the device 102 is a scanner, the device 102 includes a reading unit that reads an image formed on a document as another hardware component.

[0020] 4 is a block diagram showing an example of software related to the device 102 stored in the auxiliary storage device 205 included in the PC 101 according to the first embodiment. As shown as an example in FIG. 4, the auxiliary storage device 205 included in the PC 101 stores an installer 401, a driver INF file 402, a vendor driver, and application software related to the device 102. Hereinafter, this application software will be referred to as a "device-related application." Specifically, the auxiliary storage device 205 stores a printer driver 403, a scanner driver 404, and a fax driver 405 as vendor drivers. The auxiliary storage device 205 also stores a print-related application 406, a scan-related application 407, and a fax-related application 408 as device-related applications.

[0021] The installer 401, when executed by the CPU 202, searches for the device 102 connected to the PC 101 and displays information about the device 102 detected by the search on the monitor 201. The installer 401 is a driver installer that installs, into the PC 101, a vendor driver for the device 102 that corresponds to information selected by the user from the displayed information. The driver INF file 402 includes information indicating the model of the device 102 that corresponds to at least one of a printer driver 403, a scanner driver 404, and a fax driver 405 that are installed by executing the installer 401.

[0022] The installer 401 includes, as functional components, a status checking unit 409, a driver installing unit 410, an icon generating unit 411, and an application installing unit 412. Each unit included in the functional components of the installer 401 shown as an example in Fig. 4 is realized by the CPU 202 of the PC 101 reading and executing the installer 401 stored in the auxiliary storage device 205. In this embodiment, the installer 401, when executed by the CPU 202, searches for devices 102 present within the same network 104 and displays the devices 102 detected by the search on the monitor 201. On the other hand, if no devices 102 present within the same network 104 are detected, the installer 401 displays, on the monitor 201, a notification that no devices were detected.

[0023] The status confirmation unit 409 determines whether a setting that restricts installation of vendor drivers is enabled or disabled in the OS of the PC 101, regardless of the driver version. Hereinafter, as an example, a case will be described in which the OS of the PC 101 is Windows provided by Microsoft, and the setting is whether WPP is enabled or disabled. That is, in this embodiment, the status confirmation unit 409 determines whether WPP is enabled or disabled.

[0024] The driver installation unit 410 installs a vendor driver in the PC 101. The driver installation unit 410 can select a vendor driver to be installed in the PC 101 depending on the type of the device 102. For example, if the device 102 is a printer, the installer 401 installs a printer driver 403 in the PC 101. If the device 102 is a scanner, the installer 401 installs a scanner driver 404 in the PC 101. If the device 102 is an MFP (Multi-Function Printer), the installer 401 installs the printer driver 403 and at least one of the scanner driver 404 and fax driver 405 in the PC 101.

[0025] The icon generation unit 411 generates a device icon associated with the device 102. The icon generation unit 411 can change the device icon to be generated depending on the type of the device 102. The installer 401 associates the device icon generated by the icon generation unit 411 with the vendor driver installed by the installer 401, and installs the icon in the PC 101. For example, if the device 102 is a printer, the icon generation unit 411 generates a printer icon. If the device 102 is a scanner, the icon generation unit 411 generates a scanner icon. If the device 102 is an MFP, the icon generation unit 411 generates a printer icon and / or a scanner icon and / or a fax icon.

[0026] The application installation unit 412 installs application software (device-related applications) related to the device 102. The device-related applications include application software such as a print-related application 406, a scan-related application 407, and a fax-related application 408. The application installation unit 412 can select the device-related application to install depending on the type of device 102. For example, if the device 102 is a printer, the application installation unit 412 installs the print-related application 406 in the PC 101. If the device 102 is a scanner, the application installation unit 412 installs the scan-related application 407 in the PC 101. If the device 102 is an MFP, the application installation unit 412 installs the print-related application 406 and the scan-related application 407 in the PC 101.

[0027] Fig. 5 is a diagram showing an example of a UI screen according to the first embodiment. Specifically, Fig. 5(a) shows an example of an initial startup screen 501 displayed on the monitor 201 when the installer 401 is started by the CPU 202. Fig. 5(b) is an example of a UI screen displayed when at least one of the driver installation unit 410, the icon generation unit 411, and the application installation unit 412 is being executed as a result of the execution of the installer 401 by the CPU 202. An installation in progress screen 503 shown in Fig. 5(b) is displayed in place of the initial startup screen 501 when a button 502 on the initial startup screen 501 is pressed by the user.

[0028] After the installer 401 is started by the CPU 202, the installer 401 executes the processing of the status confirmation unit 409 before displaying the initial startup screen 501. If the result of the confirmation processing by the status confirmation unit 409 indicates that the WPP is disabled, the installer 401 displays the initial startup screen 501. On the other hand, if the result of the confirmation processing by the status confirmation unit 409 indicates that the WPP is enabled, the installer 401 displays a warning notification dialog box on the monitor 201 indicating that the WPP is enabled. The form of the warning notification dialog box will be described later with reference to FIG. 6.

[0029] The installation in progress screen 503 includes an internal processing status 504 that is an area showing the status of internal processing. For example, when the installer 401 is executing processing of the driver installation unit 410, a message such as "Installing driver..." and a progress bar 505 are displayed in the internal processing status 504. Fig. 5(c) shows an example of a UI screen that is displayed when various installation processes by the installer 401 are completed. When the user presses a button 507 in the installation completion screen 506 shown in Fig. 5(c), the installer 401 closes the installation completion screen 506 and ends the predetermined installation process.

[0030] 6A and 6B are diagrams showing an example of a warning notification dialog displayed on the monitor 201 according to the first embodiment. Fig. 6A shows an example of a warning notification dialog 601 displayed on the monitor 201 when it is determined that WPP is enabled as a result of the confirmation process by the state confirmation unit 409. The warning notification dialog 601 shown in Fig. 6A includes a message notifying the user that a desired driver cannot be installed because WPP is enabled, and notifying the user of possible workarounds for installing the driver. When a button 602 in the warning notification dialog 601 is pressed by the user, the installer 401 closes the warning notification dialog 601 and ends the specified installation process.

[0031] FIG. 6B shows an example of a warning notification dialog 603 displayed on the monitor 201 when the status confirmation unit 409 determines that WPP is enabled as a result of the confirmation process. The warning notification dialog 603 shown in FIG. 6B includes a message notifying the user that the desired driver cannot be installed because WPP is enabled. The warning notification dialog 603 also includes a message guiding the user to display possible workarounds for installing the driver. When a user presses a button 604 in the warning notification dialog 603, the installer 401 displays a web page that shows how to change the settings so that WPP is disabled from an enabled state. When a user presses a button 605 in the warning notification dialog 603, the installer 401 closes the warning notification dialog 603 and terminates the specified installation process.

[0032] FIG. 6C shows an example of a warning notification dialog box 606 displayed on the monitor 201 when the status confirmation unit 409 determines that WPP is enabled as a result of the confirmation process. The warning notification dialog box 606 shown in FIG. 6C includes a message notifying the user that the desired driver cannot be installed because WPP is enabled. The warning notification dialog box 606 also includes a message guiding the user to perform an operation to change the settings so that WPP is disabled by the installer 401. When a user presses a button 607 in the warning notification dialog box 606, the installer 401 closes the warning notification dialog box 606, changes the settings so that WPP is disabled, and then displays the initial startup screen 501. When a user presses a button 608 in the warning notification dialog box 606, the installer 401 closes the warning notification dialog box 606 and terminates the specified installation process.

[0033] Fig. 7 is a flowchart showing an example of the flow of installation processing using the installer 401 in the PC 101 according to embodiment 1. Specifically, the flowchart shown in Fig. 7(a) shows an example of the processing flow of the installer 401 when the warning notification dialog 601 or 603 is displayed when the status confirmation unit 409 determines that WPP is enabled. The processing of this flowchart is started when the CPU 202 starts the installer 401 based on a user operation.

[0034] In S701, the CPU 202 checks the WPP settings and determines whether the WPP is enabled or disabled. The check process in S701 is realized by the CPU 202 executing the state check unit 409 included in the installer 401. In S702, the CPU 202 determines whether the WPP is enabled based on the result of the check process in S701. If it is determined that the WPP is enabled (Yes), the process proceeds to S709, and if it is determined that the WPP is not enabled (No), the process proceeds to S703. In S703, the CPU 202 displays the initial startup screen 501 shown in FIG. 5A. Thereafter, the CPU 202 waits until the button 502 on the initial startup screen 501 is pressed by the user. If the button 502 on the initial startup screen 501 is pressed by the user, the process proceeds to S704. In S704, the CPU 202 displays an installation screen 503 shown in FIG. 5B instead of the initial startup screen 501.

[0035] In S705, the CPU 202 installs a vendor driver. The installation process in S705 is realized by the CPU 202 executing the driver installation unit 410 included in the installer 401. In S706, the CPU 202 generates a device icon. The generation process in S706 is realized by the CPU 202 executing the icon generation unit 411 included in the installer 401. In S707, the CPU 202 installs a device-related application. The installation process in S707 is realized by the CPU 202 executing the application installation unit 412 included in the installer 401. In S708, the CPU 202 displays the installation completion screen 506 shown in FIG. 5C, instead of the installation in progress screen 503. When the user presses button 507 on the installation completion screen 506, the CPU 202 closes the installation completion screen 506 and terminates the process of the flowchart shown in FIG. 7A, i.e., the execution of the installer 401.

[0036] In S709, the CPU 202 displays the warning notification dialog 601 or 603. When the user presses the button 602 or 605 in the warning notification dialog 601 or 603, the CPU 202 closes the displayed warning notification dialog 601 or 603 and terminates the processing of the flowchart shown in FIG. 7A, i.e., the execution of the installer 401.

[0037] The flowchart shown in Fig. 7(b) shows an example of a processing flow from when the installer 401 is launched to when it is terminated, when the warning notification dialog 606 shown in Fig. 6 is displayed after the status confirmation unit 409 has determined that WPP is enabled. The processing of this flowchart is initiated when the CPU 202 launches the installer 401 based on a user operation. In the description of Fig. 7(b), steps that perform the same processing as those in the flowchart shown in Fig. 7(a) are assigned the same reference numerals, and their description will be omitted. That is, description of steps S701 to S708 shown in the flowchart of Fig. 7(b) will be omitted.

[0038] In S709, the CPU 202 displays the warning notification dialog 606. The CPU 202 waits until the user presses either the button 607 or 608 in the warning notification dialog 606. In S710, the CPU 202 determines whether the user presses either the button 607 or the button 608 in the warning notification dialog 606. If it is determined that the button 607 (Yes) has been pressed, the process proceeds to S711. If it is determined that the button 608 (No) has been pressed, the CPU 202 closes the warning notification dialog 606 and terminates the processing of the flowchart shown in FIG. 7B, i.e., the execution of the installer 401. In S711, the CPU 202 closes the warning notification dialog 606 and changes the setting so that WPP is disabled from an enabled state. After S711, the CPU 202 executes the processing of S703 to S708.

[0039] As described above, the system is configured to check whether WPP is enabled, i.e., whether installation of vendor drivers is restricted by the OS settings regardless of the version, before installing a vendor driver. This allows the user to be notified that if a vendor driver cannot be installed, the reason is that installation of vendor drivers is restricted by the OS settings regardless of the version. The system is also configured to check whether the user is willing to change the settings from the restricted installation state to one that allows installation. This allows the user to change the settings to one that allows installation at their own discretion, and the vendor driver can be installed after the settings have been changed to one that allows installation.

[0040] The WPP setting confirmation process by the state confirmation unit 409 is performed by acquiring WPP setting information using an API (Application Programming Interface) provided by Windows. The method of this confirmation process is not limited to using an API, and for example, the WPP setting confirmation process by the state confirmation unit 409 may be performed by acquiring a predetermined registry value related to the WPP setting.

[0041] <Embodiment 2> The second embodiment will be described focusing on the differences from the first embodiment. The installer 401 according to the first embodiment includes a status confirmation unit 409 that determines whether the WPP is enabled or disabled. In contrast, the installer 401 according to the present embodiment determines whether the WPP is enabled or disabled during the process of installing a vendor driver or during the process of generating a device icon associated with the vendor driver. In the description of the present embodiment, the same components as those in the first embodiment will be assigned the same reference numerals and description thereof will be omitted.

[0042] Fig. 8 is a flowchart showing an example of the flow of installation processing using the installer 401 in the PC 101 according to the second embodiment. Specifically, the flowchart shown in Fig. 8 shows an example of the processing flow from when the installer 401 is launched until it is terminated. The processing of this flowchart is started when the CPU 202 launches the installer 401 based on a user operation. In the description of Fig. 8, steps that perform the same processing as those in the flowchart shown in Fig. 7 are given the same reference numerals, and their description will be omitted. In other words, description of steps S703 to S709 shown in the flowchart of Fig. 8 will be omitted.

[0043] First, the CPU 202 executes the process of S703. When the button 502 on the initial startup screen 501 is pressed by the user, the CPU 202 executes the processes of S704 and S705. In S801, the CPU 202 determines whether or not the installation of the vendor driver in S705 failed. If it is determined in S801 that the installation of the vendor driver failed (Yes), the process proceeds to S802. If it is not (No), that is, if it is determined that the installation process was successful, the process proceeds to S706, and the CPU 202 executes the processes of S706 to S708.

[0044] In S802, the CPU 202 acquires an error code output from the OS that can identify the cause of the installation failure in S705. In S803, the CPU 202 determines, based on the error code acquired in S802, whether the installation failure was caused by the WPP being enabled. If it is determined in S803 that the installation failure was caused by the WPP being enabled (Yes), the process proceeds to S709, where the CPU 202 executes the process of S709. If not (No), that is, if it is determined that the WPP being enabled was not the cause, the process proceeds to S804. In S804, the CPU 202 displays a general-purpose message indicating that the installation failed on the monitor 201. After S804 or S709, the CPU 202 ends the displayed message or warning notification dialog based on a predetermined operation from the user, and ends the process of the flowchart shown in FIG. 8, i.e., the execution of the installer 401.

[0045] Fig. 9 is a flowchart showing an example of the flow of installation processing using the installer 401 in the PC 101 according to the second embodiment. Specifically, Fig. 9 shows an example of the processing flow from when the installer 401 is started to when it is terminated, in a case where installation of a vendor driver is successful but generation of a printer icon may fail in the subsequent device icon generation processing. The processing of this flowchart is started when the CPU 202 starts the installer 401 based on a user operation. Note that in the description of Fig. 9, a description of steps that execute processing identical to the processing of the flowcharts shown in Fig. 7 or 8 will be omitted. That is, a description of S703 to S708 shown in the flowchart of Fig. 9 will be omitted.

[0046] First, the CPU 202 executes the process of S703. When the button 502 on the initial startup screen 501 is pressed by the user, the CPU 202 sequentially executes the processes of S704 to S706. In S901, the CPU 202 determines whether or not the generation of the device icon in S706 failed. If it is determined in S901 that the generation of the device icon failed (Yes), the process proceeds to S902. If not (No), that is, if it is determined that the generation of the device icon was successful, the process proceeds to S707, and the CPU 202 executes the processes of S707 and S708.

[0047] In S902, the CPU 202 acquires an error code output from the OS that can identify the cause of the failure to generate the printer icon in S706. In S903, the CPU 202 determines, based on the error code acquired in S902, whether the generation of the printer icon was caused by the WPP being enabled. If it is determined in S903 that the cause was the WPP being enabled (Yes), the process proceeds to S709, where the CPU 202 executes the process of S709. If not (No), that is, if it is determined that the cause was not the WPP being enabled, the process proceeds to S804, where the CPU 202 executes the process of S804. After S804 or S709, the CPU 202 terminates the display of the displayed message or warning notification dialog based on a predetermined operation by the user, and terminates the process of the flowchart shown in FIG. 8, i.e., the execution of the installer 401.

[0048] As described above, when the installation of a vendor driver fails, the system is configured to check whether the cause of the failure is that WPP is enabled, i.e., that the installation of the vendor driver is restricted by the OS settings. This allows the user to be notified that the reason for the failure is that the installation of the vendor driver is restricted by the OS settings, even if there is no configuration to identify whether WPP is enabled or disabled using an API or the like.

[0049] In the process of S801, the CPU 202 may determine whether the installation has failed by limiting the determination to the printer driver. Furthermore, if the WPP can restrict the installation of not only the printer driver but also other vendor drivers, such as a scanner driver, the CPU 202 may also determine whether the installation has failed by including vendor drivers other than the printer driver. Similarly, in S901 of FIG. 9, the determination of whether the installation has failed may be limited to a failure to generate a printer icon, or may also include a failure to generate other device icons.

[0050] <Embodiment 3> The third embodiment will be described, focusing on the differences from the first or second embodiment. As described above, in the case of WPP, the installation and operation of vendor drivers can only be restricted with respect to the print function. Therefore, in this embodiment, when the device 102 has functions other than the print function, such as an MFP, a mode will be described in which vendor drivers and applications related to functions other than the print function that are not affected by the restrictions imposed by WPP are installed. Note that in the description of this embodiment, the same components as those in the first or second embodiment will be assigned the same reference numerals and description thereof will be omitted.

[0051] 10 is a diagram showing an example of a warning notification dialog 1001 displayed on the monitor 201 according to the third embodiment. Specifically, Fig. 10 shows an example of the warning notification dialog 1001 displayed on the monitor 201 when it is determined that WPP is enabled as a result of the confirmation process performed by the state confirmation unit 409. When the user presses button 1002 in the warning notification dialog 1001, the installer 401 displays the initial startup screen 501 instead of the warning notification dialog 1001, while retaining the WPP settings. On the other hand, when the user presses button 1003 in the warning notification dialog 1001, the installer 401 closes the warning notification dialog 1001 and ends the specified installation process.

[0052] Fig. 11 is a flowchart showing an example of the flow of installation processing using the installer 401 in the PC 101 according to the third embodiment. Specifically, the flowchart shown in Fig. 11 shows an example of the processing flow from when the installer 401 is started to when it is terminated. The processing of this flowchart is started when the CPU 202 starts the installer 401 based on an operation by the user. In the description of Fig. 11, steps that perform the same processing as the processing of the flowchart shown in Fig. 7 are assigned the same reference numerals, and description thereof will be omitted.

[0053] First, the CPU 202 executes the processes of S701 and S702. If it is determined in S702 that the WPP is enabled (Yes), the process proceeds to S709, where the CPU 202 executes the process of S709 and displays the warning notification dialog 1001. The CPU 202 waits until the user presses button 1002 or 1103 in the warning notification dialog 1001. If not (No), that is, if it is determined that the WPP is disabled, the process proceeds to S703, where the CPU 202 executes the processes of S703 and S704. In S1101, the CPU 202 determines whether button 1002 or button 1103 in the warning notification dialog 1001 has been pressed. If it is determined in S1101 that the user has pressed button 1002 (Yes) in the warning notification dialog 1001, the process proceeds to S1102. If it is determined in step S1101 that the user has pressed the button 1003 (No) on the warning notification dialog 1001, the CPU 202 closes the warning notification dialog 1001 and ends the execution of the installer 401.

[0054] In S1102, the CPU 202 holds information related to the WPP settings, i.e., information indicating that the WPP is enabled. Specifically, for example, the CPU 202 temporarily stores the information in the RAM 204 or the like. After S1102, the CPU 202 executes the process of S704 to display the installation in progress screen 503. In S1105, the CPU 202 executes the installation process of the vendor driver. In S1106, the CPU 202 executes the generation process of a device icon. In S1107, the CPU 202 executes the installation process of a device-related application. After S1107, the CPU 202 executes the process of S708.

[0055] 12 is a flowchart showing an example of the processing flow of the driver installing unit 410, the icon generating unit 411, and the application installing unit 412 according to the third embodiment. Specifically, Fig. 12(a) is a flowchart showing an example of the processing flow of the driver installing unit 410, and is a flowchart showing an example of the flow of the device driver installation processing in S1105 shown in Fig. 11.

[0056] In S1201, the CPU 202 determines whether WPF is enabled based on the information related to the WPP settings stored in S1102. If it is determined in S1201 that WPP is enabled (Yes), the process proceeds to S1203; if it is determined not to be enabled (No), that is, if it is determined that WPP is disabled, the process proceeds to S1202. In S1202, the CPU 202 installs the printer driver 403. In S1203, the CPU 202 installs the scanner driver 404. In S1204, the CPU 202 installs the fax driver 405. After S1204, the CPU 202 ends the process of the flowchart shown in FIG. 12(a), i.e., the process of S1105.

[0057] FIG. 12B is a flowchart showing an example of the processing flow of the icon generation unit 411, and is a flowchart showing an example of the flow of the device icon generation processing in S1106 shown in FIG. 11. In S1211, the CPU 202 determines whether or not WPF is enabled based on the information related to the WPP settings stored in S1102. If it is determined in S1211 that WPP is enabled (Yes), the process proceeds to S1213; if it is determined not to be enabled (No), that is, if it is determined that WPP is disabled, the process proceeds to S1212. In S1212, the CPU 202 generates a printer icon. In S1213, the CPU 202 generates a scanner icon. In S1214, the CPU 202 generates a fax icon. After S1214, the CPU 202 ends the processing of the flowchart shown in FIG. 12B, i.e., the processing of S1106.

[0058] FIG. 12C is a flowchart showing an example of the processing flow of the application installation unit 412, and is a flowchart showing an example of the flow of the device-related application installation processing in S1107 shown in FIG. 11. In S1221, the CPU 202 determines whether or not WPF is enabled based on the information related to the WPP settings stored in S1102. If it is determined in S1221 that WPP is enabled (Yes), the process proceeds to S1223. If it is determined not to be enabled (No), that is, if it is determined that WPP is disabled, the process proceeds to S1222. In S1222, the CPU 202 installs the print-related application 406. In S1223, the CPU 202 installs the scan-related application 407. In S1224, the CPU 202 installs the fax-related application 408. After S1224, the CPU 202 ends the processing of the flowchart shown in FIG. 12C, i.e., the processing of S1107.

[0059] As described above, when there are installation restrictions imposed by WPP, the present embodiment is configured to install vendor drivers and device-related applications corresponding to functions that are not affected by the WPP restrictions, among the multiple functions of the device 102. This makes the present embodiment more useful than the first or second embodiment when the device 102 is a device with multiple functions, such as an MFP. Specifically, when a user wants to use the device 102 for a purpose other than the print function whose installation or use is restricted by WPP, the user can install vendor drivers and device-related applications corresponding to functions other than the print function.

[0060] In the present embodiment, the process of installing a printer driver and print-related applications and the process of generating a printer icon are skipped when WPP is enabled. However, this is not a limitation. For example, if WPP restricts the installation of vendor drivers and device-related applications that support not only the print function but also the fax function, the following configuration may be used. Specifically, in this case, the process of installing vendor drivers and device-related applications that support the print function and the fax function and the process of generating a device icon may be skipped. Furthermore, in the present embodiment, as shown in FIG. 12(c) as an example, all print-related, scan-related, and fax-related applications are installed. However, this is not a limitation. For example, if a vendor does not provide a fax-related application, the installation of the fax-related application may not be performed.

[0061] <Embodiment 4> The fourth embodiment will be described, focusing on the differences from the first to third embodiments. This embodiment assumes the following use case. For example, when a user purchases a printer, a setup CD (Compact Disc) (hereinafter referred to as a "setup CD") may be included with the printer. The setup CD contains an installation package that includes an installer, a device driver (vendor driver) to be installed, and device-related applications related to print or scan functions. However, the setup CD contains an installation package that is an older version than the version at the time the setup CD was manufactured.

[0062] Therefore, the setup CD includes application software that automatically downloads and acquires the latest version of an installation package, in which functions have been added or faults have been fixed, via the external network 105. Hereinafter, this application software will be referred to as a setup application. In this embodiment, even when installing a vendor driver using the setup application, the installation is performed taking into account the WPP settings. In the description of this embodiment, the same components as those in any of the first to third embodiments will be assigned the same reference numerals and description thereof will be omitted.

[0063] 13 is a block diagram showing the configuration of a setup application 1301 corresponding to the device 102 according to the fourth embodiment. As shown in FIG. 13, the setup application 1301 is stored, for example, in a setup CD 1300 that is included when the device 102 is purchased. The setup application 1301 is executed by the CPU 202 to perform the following processing. The setup application 1301 downloads, via the external network 105, an installer 401, vendor drivers 403 to 405, and device-related applications 406 to 408 corresponding to the device 102 connected to the PC 101. The setup application 1301 then executes the installer 401 obtained by downloading it.

[0064] The setup application 1301 has, as its functional components, a status checking unit 1302, a download unit 1303, an installation instruction unit 1304, and a test printing unit 1305. Each unit included in the setup application 1301 as a functional component, as shown in FIG. 13 as an example, is realized by the CPU 202 reading and executing the setup application 1301 stored on the setup CD 1300.

[0065] The status checking unit 1302 determines whether a setting for restricting installation of vendor drivers is enabled or disabled in the OS of the PC 101, regardless of the driver version. Hereinafter, as an example, a case will be described in which the OS of the PC 101 is Windows provided by Microsoft, and the setting is whether WPP is enabled or disabled. That is, in this embodiment, the status checking unit 1302 determines whether WPP is enabled or disabled. The download unit 1303 downloads the latest installer 401, various vendor drivers 403 to 405, and device-related applications 406 to 408 via the external network 105.

[0066] The installation instruction unit 1304 instructs the download unit 1303 to execute the installer 401 obtained by download. In response to this instruction, the CPU 202 starts and executes the installer 401. This execution installs various vendor drivers 403 to 405 and device-related applications 406 to 408 obtained by download by the download unit 1303. In addition, a device icon linked to each vendor driver is generated. The test printing unit 1305 executes test printing based on a user operation on the printer icon linked to the installed printer driver 403.

[0067] Fig. 14 is a diagram showing an example of a UI screen according to the fourth embodiment. Specifically, Fig. 14(a) shows an example of an initial startup screen 1401 displayed on the monitor 201 when the setup application 1301 is started by the CPU 202. The initial startup screen 1401 shown in Fig. 14(a) is displayed first when the setup application 1301 is started. Fig. 14(b) shows an example of a downloading screen 1403 displayed when the download unit 1303 is running as a result of the execution of the setup application 1301 by the CPU 202. The downloading screen 1403 shown in Fig. 14(b) is displayed in place of the initial startup screen 1401 when the user presses a button 1402 on the initial startup screen 1401. The downloading screen 1403 includes an internal processing status 1404 that is an area showing the status of internal processing. For example, when the setup application 1301 is executing the process of the download section 1303, the internal processing status 1404 displays a message such as "Downloading..." and a progress bar 1405.

[0068] 14(c) is a diagram showing an example of an installation in progress screen 1406 that is displayed when various installation processes are being performed by the installer 401 as a result of execution of the setup application 1301 by the CPU 202. The installation in progress screen 1406 shown in FIG. 14(c) is displayed in place of the downloading in progress screen 1403 when the installer 401 is being executed in response to an instruction from the installation instruction unit 1304 after various downloads by the download unit 1303 have been completed. The installation in progress screen 1406 includes an internal processing status 1407 that is an area showing the status of internal processing. For example, when the installer 401 executed in response to an instruction from the installation instruction unit 1304 is executing the driver installation unit 410, a message such as "Driver installation in progress..." and a progress bar 1408 are displayed in the internal processing status 1407.

[0069] 14(d) shows an example of a setup completion screen 1409 that is displayed when various installation processes by the installer 401 are completed. The setup completion screen 1409 shown in FIG. 14(d) is displayed in place of the installation in progress screen 1406 shown in FIG. 14(c) when various installation processes by the installer 401 are completed. When a button 1410 on the setup completion screen 1409 is pressed by the user, the test printing section 1305 is executed. When a button 1411 on the setup completion screen 1409 is pressed by the user, the setup application 1301 closes the setup completion screen 1409 and ends the specified processing.

[0070] 14(e) is a diagram showing an example of a warning screen 1412 that is displayed when it is detected that WPP is enabled. When a button 1413 on the warning screen 1412 is pressed by the user, the setup application 1301 skips the processing of the download section 1303 and the installation instruction section 1304 and displays a setup completion screen 1409.

[0071] 15 is a flowchart showing an example of a processing flow from when the setup application 1301 is launched to when it is terminated on the PC 101 according to the fourth embodiment. The processing of this flowchart begins when the CPU 202 launches the setup application 1301 based on a user operation. In S1501, the CPU 202 displays the initial startup screen 1401. Thereafter, the CPU 202 waits until the user presses the button 1402 on the initial startup screen 1401. When the user presses the button 1402 on the initial startup screen 1401, the process proceeds to S1502.

[0072] In S1502, the CPU 202 checks the WPP settings and determines whether the WPP is enabled or disabled. Note that the checking process in S1501 is implemented by the CPU 202 executing the state checking unit 1302 included in the setup application 1301. In S1503, the CPU 202 determines whether the WPP is enabled or disabled based on the results of the check in S701. If it is determined in S1503 that the WPP is enabled (Yes), the process proceeds to S1511; if it is determined not to be enabled (No), i.e., if it is determined that the WPP is disabled, the process proceeds to S1504.

[0073] In S1504, the CPU 202 displays a downloading screen 1403 in place of the initial startup screen 1401. In S1505, the CPU 202 downloads the installer 401, the vendor drivers 403 to 405, and the device-related applications 406 to 408. The downloading in S1505 is realized by the CPU 202 executing the download unit 1303 included in the setup application 1301. In S1506, the CPU 202 displays an installation screen 1406 in place of the downloading screen 1403. In S1507, the CPU 202 installs the vendor drivers 403 to 405, etc., by executing the installer 401 downloaded in S1505 based on instructions from the installation instruction unit 1304. The instructions from the installation instruction unit 1304 in S1507 are realized by the CPU 202 executing the installation instruction unit 1304 included in the setup application 1301.

[0074] In S1508, the CPU 202 displays the setup completion screen 1409 in place of the installation in progress screen 1406, with the button 1410 for executing test printing displayed and in a state where the button 1410 can be pressed. In S1509, the CPU 202 performs test printing. The test printing in S1509 is realized by the CPU 202 executing the test printing unit 1305 included in the setup application 1301 when the user presses the button 1410 on the setup completion screen 1409. When the user presses the button 1411 on the setup completion screen 1409, the CPU 202 closes the setup completion screen 1409 and terminates the processing of the flowchart shown in FIG. 15, i.e., the execution of the setup application 1301. Note that if the user presses the button 1411 before pressing the button 1410 on the setup completion screen 1409, the processing of S1509 is skipped.

[0075] In S1511, the CPU 202 displays a warning screen 1412 instead of the initial startup screen 1401. The CPU 202 waits until the user presses a button 1413 on the warning screen 1412. If the user presses the button 1413 on the warning screen 1412, the process proceeds to S1512. In S1512, the CPU 202 displays the setup completion screen 1409 instead of the warning screen 1412, with the button 1410 for executing test printing in a state where it cannot be pressed, such as a hidden state. If the user presses a button 1411 on the setup completion screen 1409, the CPU 202 closes the setup completion screen 1409 and terminates the processing of the flowchart shown in FIG. 15, i.e., the execution of the setup application 1301.

[0076] As described above, when using the setup application 1301, the system is configured to check whether the WPP is enabled, i.e., whether installation of vendor drivers is restricted by the OS settings regardless of the version. Specifically, the system is configured to check this before executing the download process of the installer 401, etc. and the installation process of the vendor drivers 403 to 405, etc. Furthermore, if the check determines that the WPP is enabled, i.e., whether installation of vendor drivers is restricted by the OS settings regardless of the version, the download process and the installation process are skipped.

[0077] This makes it possible to reduce communication costs for downloading files such as installer 401 when installation of a vendor driver is restricted by OS settings regardless of the version. Furthermore, in this case, it is possible to reduce the user's waiting time required to download files such as installer 401. Note that the larger the size of the file to be downloaded, the longer the user's waiting time during the download process. If the user only realizes that the vendor driver cannot be installed after the download process is complete, the user will end up having to wait unnecessarily. By checking whether installation of a vendor driver is restricted by OS settings regardless of the version before downloading installer 401 or the like, it is possible to prevent this waiting time from occurring.

[0078] In addition, the setup completion screen 1409 is configured to display or hide UI components for executing functions that use vendor drivers, such as test printing, based on whether the use of vendor drivers is restricted by the OS due to settings such as WPP.

[0079] In the present embodiment, the setup application 1301 has been described as including a functional block for downloading and installing a vendor driver and a functional block for performing test printing using the installed vendor driver. However, the configuration of the setup application 1301 is not limited to this. For example, the setup application 1301 may include various setup functions, such as setting up the device 102 itself and supporting connection between the device 102 and a PC via a network or a USB cable. Setting up the device 102 itself includes installing ink tanks, etc., if the device 102 is a printer. If the setup application 1301 includes various setup functions as described above, this increases the time required for the user to set up the device 102. However, as in the present embodiment, by determining in advance whether vendor driver installation or use is restricted based on settings such as WPP, the time required for this setup can be reduced.

[0080] Furthermore, in the present embodiment, an example has been shown in which the installation process of vendor drivers and device-related applications corresponding to all functions possessed by the device 102 is skipped, but the present invention is not limited to this. For example, as in embodiment 3, the setup application 1301 may be configured to skip only the download of printer drivers and print-related applications related to the print function among the multiple functions possessed by the device 102. In this case, the installer 401 configures the setup application 1301 to skip only the installation of printer drivers and print-related applications whose download has been skipped. As a result, vendor drivers and device-related applications corresponding to functions other than the print function, such as a scan function and a fax function, are downloaded and installed.

[0081] In this case, for example, warning screen 1412 may be configured to present a message to the user stating that only vendor drivers and device-related applications corresponding to functions other than the print function, such as a scan function and a fax function, should be installed. Also, for example, warning screen 1412 may be configured to prompt the user to select whether or not to install vendor drivers and device-related applications corresponding to functions other than the print function. If the user selects to install vendor drivers and device-related applications corresponding to functions other than the print function, then in subsequent processing, only the vendor drivers and device-related applications are downloaded and installed.

[0082] <Embodiment 5> The fifth embodiment will be described focusing on the differences from the first to fourth embodiments. In this embodiment, instead of installing a vendor driver, the following is installed. Specifically, a device driver provided by an OS vendor (hereinafter referred to as a "standard driver") and a PSA provided by a third party such as the vendor of the device 102 (hereinafter referred to as a "vendor PSA") are installed. The same components as those in the first to fourth embodiments are designated by the same reference numerals, and their description will be omitted.

[0083] Fig. 16 is a diagram showing an example of a UI screen according to the fifth embodiment. Specifically, Fig. 16 shows an example of a guide screen 1601 displayed on the monitor 201 by executing the setup application 1301 when WPP is enabled and a vendor PSA can be installed. The guide screen 1601 includes, for example, a message indicating that a vendor driver (hereinafter also referred to as a "vendor driver") cannot be installed and that a standard driver and a vendor PSA can be installed instead of the vendor driver.

[0084] When the user presses button 1602 on guide screen 1601, setup application 1301 displays a standard printer setup screen (hereinafter referred to as the "standard setup screen") such as Add Printer Wizard provided by the OS vendor. The user sets up device 102 using the standard driver and vendor PSA by following the guidance on the standard setup screen. Specifically, the setup of device 102 is performed by installing the standard driver and downloading and installing the vendor PSA. A printer icon corresponding to the standard driver is generated by setting up device 102 using the standard setup screen.

[0085] When the setup application 1301 detects the generation of a printer icon, the setup application 1301 displays a setup completion screen 1409. In this case, the setup application 1301 displays the setup completion screen 1409 with a button 1410 for executing test printing on the setup completion screen 1409 in a pressable state, such as a displayed state. When the setup application 1301 cannot detect the generation of a printer icon, the setup application 1301 displays the setup completion screen 1409 with the button 1410 in a non-pressable state, such as a hidden state. When the user presses button 1603 on the guidance screen 1601, the setup application 1301 displays the setup completion screen 1409 instead of the guidance screen 1601, with the button 1410 in a non-pressable state, such as a hidden state.

[0086] 17 is a flowchart showing an example of a processing flow from when the setup application 1301 is launched to when it is terminated in the PC 101 according to the fifth embodiment. The processing of this flowchart is initiated when the CPU 202 launches the setup application 1301 based on a user operation. In the description of FIG. 17, the same processes as those in the flowchart shown in FIG. 15 are denoted by the same reference numerals, and description thereof will be omitted. First, the CPU 202 executes the processing from S1501 to S1503. If it is determined in S1503 that the WPP is enabled (Yes), the process proceeds to S1701. If it is determined not to be enabled (No), that is, if it is determined that the WPP is disabled, the process proceeds to S1504, where the CPU 202 executes the processing from S1504 to S1509.

[0087] In S1701, the CPU 202 determines whether or not the vendor PSA can be installed. If it is determined in S1701 that installation is possible (Yes), the process proceeds to S1702. If it is not (No), that is, if it is determined that installation is not possible, the process proceeds to S1511, where the CPU 202 executes the processes of S1511 and S1512. In S1702, the CPU 202 displays the guide screen 1601. The CPU 202 waits until either button 1602 or 1603 on the guide screen 1601 is pressed. If either button 1602 or 1603 on the guide screen 1601 is pressed, the process proceeds to S1703. In S1703, the CPU 202 determines whether or not button 1602 for starting setup on the guide screen 1601 has been pressed. If it is determined in S1703 that button 1602 has been pressed (Yes), the process proceeds to S1704. If not (No), that is, if it is determined that the button 1603 for canceling the setup has been pressed, the process proceeds to S1512, and the CPU 202 executes the process of S1512.

[0088] In S1704, the CPU 202 displays a standard setup screen. The user performs operations according to the guidance on the standard setup screen. In S1705, the CPU 202 performs setup of the device 102 by installing a standard driver and a vendor PSA based on the user's operations on the standard setup screen. In S1706, the CPU 202 determines whether the setup of the device 102 using the standard driver and vendor PSA was successful. If it is determined in S1706 that the setup was successful (Yes), the process proceeds to S1508, and the CPU 202 executes the processes of S1508 and S1509. If it is not successful (No), that is, if it is determined that the setup failed, the process proceeds to S1512, and the CPU 202 executes the process of S1512.

[0089] As described above, when using the setup application 1301, if the WPP is enabled and the vendor driver cannot be installed, the setup of the device 102 using the standard driver and the vendor PSA is guided. This allows the user to use the functions of the device 102 using the PC 101 even if the WPP remains enabled, i.e., even if the installation of the vendor driver remains restricted by the OS settings regardless of the version. In this embodiment, if the setup is canceled or if the setup using the standard driver and the vendor PSA fails, the setup completion screen 1409 is displayed with the button 1410 hidden or otherwise disabled. However, the operation in these cases is not limited to the above. For example, a screen indicating that the setup failed may be displayed in these cases. Furthermore, the screen may be provided with a UI component such as a button for restarting the setup from the initial startup screen 1401 of the setup application 1301.

[0090] <Embodiment 6> A sixth embodiment will be described with reference to FIGS. 18 to 21. This embodiment assumes the following use case. For example, after a user installs a vendor driver on the PC 101, an automatic OS update system such as Windows Update switches the default WPP setting from disabled to enabled. In such a case, even if printing using the vendor driver has been possible until now, printing using the vendor driver becomes impossible regardless of the user's intention. This embodiment describes a mode in which, in the above-described use case, the user is notified that printing using the vendor driver is no longer possible. In the description of this embodiment, the same components as those in the first to fifth embodiments are assigned the same reference numerals and description thereof will be omitted.

[0091] Fig. 18 is a block diagram showing an example of software related to the device 102 stored in the auxiliary storage device 205 included in the PC 101 according to the sixth embodiment. As shown as an example in Fig. 18, the auxiliary storage device 205 included in the PC 101 stores an installer 1800, a driver INF file 402, a printer driver 403, a scanner driver 404, and a fax driver 405. The auxiliary storage device 205 also stores a resident application 1801.

[0092] Resident application 1801 is application software that is executed by CPU 202 and periodically or irregularly checks whether WPP is enabled during execution. If resident application 1801 detects that WPP is enabled, it notifies the user that the functions of device 102 cannot be used using the vendor driver because WPP is enabled.

[0093] The installer 1800 has, as its functional configuration, a status checking unit 409, a driver installing unit 410, an icon generating unit 411, and an application installing unit 1802. The application installing unit 1802 is realized by the CPU 202 executing the installer 1800, and is installed when the OS supports the WPP function and the WPP is disabled.

[0094] 19 is a diagram showing an example of a warning notification dialog 1901 displayed on the monitor 201 according to the sixth embodiment. The warning notification dialog 1901 shown in FIG. 19 is displayed when the resident application 1801 is executed by the CPU 202. The warning notification dialog 1901 includes a message indicating that the use of the vendor driver is restricted by the OS due to settings such as WPP, and that unless the OS settings such as WPP are changed, the functions of the device 102 cannot be used with the vendor driver. When the user presses a button 1902 in the warning notification dialog 1901, the CPU 202 closes the warning notification dialog 1901 and terminates the execution of the resident application 1801.

[0095] 20 is a flowchart showing an example of a processing flow from when the installer 1800 is launched to when it is terminated in the PC 101 according to the sixth embodiment. The processing of this flowchart is initiated when the CPU 202 launches the installer 1800 based on a user operation. In the description of FIG. 20, the same processes as those in the flowchart shown in FIG. 7 are denoted by the same reference numerals, and description thereof will be omitted. First, the CPU 202 executes the processes of S701 and S702. If it is determined in S702 that the WPP is enabled (Yes), the process proceeds to S709, where the CPU 202 executes the process of S709 and displays the warning notification dialog 601 or 603. If it is determined not to be enabled (No), that is, if it is determined that the WPP is disabled, the process proceeds to S703, where the CPU 202 executes the processes of S703 to S705.

[0096] In S2001, the CPU 202 determines whether the OS supports a function for restricting the use of vendor drivers such as WPP. If it is determined in S2001 that the OS supports the function (Yes), the process proceeds to S2002. If it is determined not to support the function (No), that is, if it is determined that the OS does not support the function, the process proceeds to S706, where the CPU 202 executes the processes of S706 to S708. In S2002, the CPU 202 installs the resident application 1801. The installation of the resident application 1801 is realized by the CPU 202 executing the application installation unit 1802 included in the installer 1800. After S2002, the CPU 202 executes the processes of S706 to S708.

[0097] 21 is a flowchart showing an example of the processing flow of a resident application 1801 installed on the PC 101 according to the sixth embodiment. The processing of this flowchart begins when the CPU 202 detects the startup function of the OS when the PC 101 is started and starts the resident application 1801. In S2101, the CPU 202 checks the WPP settings and determines whether the WPP is enabled or disabled. In S2102, the CPU 202 determines whether the WPP is enabled. If it is determined in S2102 that the WPP is enabled (Yes), the process proceeds to S2103; if it is determined not to be enabled (No), that is, if it is determined that the WPP is disabled, the process proceeds to S2106.

[0098] In S2103, the CPU 202 displays a warning notification dialog 1901. If the user presses a button 1902 on the warning notification dialog 1901, the CPU 202 closes the warning notification dialog 1901. In S2104, the CPU 202 determines whether the WPP setting has been changed from an enabled state to an disabled state. If it is determined in S2104 that the WPP setting has been changed from an enabled state to an disabled state (Yes), the process proceeds to S2105; if it is determined not to have been changed (No), i.e., if the WPP remains enabled, the process proceeds to S2106. In S2105, the CPU 202 terminates the resident application 1801 and ends the processing of the flowchart shown in FIG. 21. In S2106, the CPU 202 waits for a fixed period of time, such as one hour. After S2106, the CPU 202 returns to S2101.

[0099] As described above, the system is configured to install a resident application 1801 that checks whether the use of the vendor driver is restricted by the OS due to settings such as WPP. This makes it possible to notify the user that the use of the vendor driver is restricted by the OS, even if WPP is switched to an enabled state regardless of the user's intention after the vendor driver is installed.

[0100] In this embodiment, the resident application 1801 installed by executing the installer 1800 has been described as an example, but the present invention is not limited to this. For example, the print-related application 406 installed by executing the installer 401 may have the same functions as the resident application 1801. In this case, the print-related application 406 operates as resident application software that is always running when the OS is running.

[0101] <Other embodiments> In the above-described embodiments, the Windows WPP has been taken as an example, but the present invention is not limited to the WPP and can also be applied to other OSs that have the same functions as the WPP.

[0102] The various controls described above as being performed by CPU 202 may be performed by a single piece of hardware, or the entire device may be controlled by multiple pieces of hardware such as multiple processors or processing circuits sharing the processing.

[0103] Furthermore, although the technology of the present disclosure has been described in detail based on preferred embodiments thereof, the technology of the present disclosure is not limited to these specific embodiments, and various forms within the scope of the gist of the present disclosure are also included in the technology of the present disclosure. Furthermore, each of the above-described embodiments merely represents one embodiment of the technology of the present disclosure, and each embodiment can be combined as appropriate.

[0104] Furthermore, in the above-described embodiment, the technology of the present disclosure has been described as being applied to a PC (personal computer), but this is not limited to this example. Specifically, the technology of the present disclosure can be applied to any device in which a vendor driver can be installed or on which an OS with a vendor driver installed runs. In addition to PCs, devices to which the technology of the present disclosure can be applied include server devices, PDAs (personal digital assistants), mobile phone terminals such as smartphones, portable image viewers, image forming devices, digital photo frames, music players, game consoles, e-book readers, and imaging devices.

[0105] The technology of the present disclosure can also be realized by executing the following process. That is, software (programs) that realize the functions of the above-described embodiments are supplied to a system or device via a network or various storage media, and the computer (or CPU, MPU, etc.) of the system or device reads and executes the program code. In this case, the program and the storage media storing the program constitute the technology of the present disclosure.

[0106] <Technical Features of the Present Disclosure> The present disclosure includes the following configurations and control methods.

[0107] (Configuration 1) a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction means for restricting installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; a program for installing specific software for providing a printing function different from the printing function of the operating system to an information processing device that operates under the operating system having a function as a printing function for printing a document, the program comprising: When an operation for installing the specific software is performed and the specific print mode is set to disabled, control is performed so that the specific software is installed in the information processing device; a control means for controlling the display of a specific notification regarding restrictions on the specific software when an operation for installing the specific software is performed and the specific print mode is enabled; A program to function as a

[0108] (Configuration 2) the at least one computer, A reference means for referencing information indicating whether the specific print mode is valid or not. It further functions as 2. The program according to configuration 1, wherein the control means performs control based on the information referenced by the reference means.

[0109] (Configuration 3) 3. The program according to claim 1, wherein the control means controls the display of the specific notification without installing the specific software.

[0110] (Configuration 4) 4. The program according to any one of configurations 1 to 3, wherein the control means controls to display the specific notification when installation of the specific software fails.

[0111] (Configuration 5) The program according to configuration 4, wherein the control means controls to display the specific notification based on the fact that installation of the specific software has failed due to the specific print mode being enabled.

[0112] (Configuration 6) 6. The program according to any one of configurations 1 to 5, wherein the specific notification indicates that installation cannot be performed.

[0113] (Configuration 7) 7. The program according to claim 6, wherein the specific notification indicates that the reason installation cannot be performed is that the specific print mode is enabled.

[0114] (Configuration 8) 8. The program according to claim 7, wherein the specific notification includes content that prompts the user to disable the specific print mode.

[0115] (Configuration 9) 8. The program according to claim 7, wherein the specific notification includes content indicating a countermeasure that the user should take to disable the specific print mode.

[0116] (Configuration 10) The program described in any one of configurations 1 to 9, characterized in that the control means controls to disable the specific print mode in response to an operation of a specific display item included in the specific notification.

[0117] (Configuration 11) 11. The program according to any one of configurations 1 to 10, wherein the specific notification includes content related to performing setup other than that related to printing.

[0118] (Configuration 12) 12. The program according to any one of configurations 1 to 11, wherein the control means controls to display the specific notification based on a failure of a predetermined process related to the installation of the specific software.

[0119] (Configuration 13) The program described in any one of configurations 1 to 12, characterized in that the control means controls the installation of second software that provides a function different from the printing function without performing a predetermined process related to the installation of the specific software when an operation to install the specific software is performed and the specific printing mode is set to enabled.

[0120] (Configuration 14) 14. The program according to claim 13, wherein the second software is at least one of a scanner driver and a fax driver.

[0121] (Configuration 15) 15. The program according to any one of configurations 1 to 14, wherein the specific notification includes content indicating that a printing function by the operating system is available.

[0122] (Configuration 16) The program described in configuration 15, characterized in that the specific notification includes at least one of content indicating that vendor support software that supports printing functions by the operating system is available, and content for performing setup to enable such use.

[0123] (Configuration 17) a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts the operation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; and a program that operates on the information processing device that operates under the operating system having the function of providing a printing function different from the printing function of the operating system, and that operates on the information processing device in which specific software for providing a printing function different from the printing function of the operating system is installed, the program comprising: a reference means for referencing information indicating whether the specific print mode is valid; a control means for controlling the display of a predetermined notification regarding a restriction on the specific software in response to a change in the setting of the specific print mode from disabled to enabled as a result of the reference by the reference means; A program to function as a

[0124] (Configuration 18) 18. The program according to claim 17, wherein the predetermined notification indicates that printing cannot be performed using the specific software.

[0125] (Configuration 19) The program according to configuration 18, wherein the predetermined notification indicates that the inability to print using the specific software is due to the specific print mode being enabled.

[0126] (Configuration 20) 20. The program according to claim 19, wherein the predetermined notification includes content that prompts the user to disable the specific print mode.

[0127] (Configuration 21) 21. The program according to claim 20, wherein the specific notification includes content indicating a countermeasure that the user should take to disable the specific print mode.

[0128] (Configuration 22) 22. The program according to any one of configurations 17 to 21, which is installed together with the specific software.

[0129] (Configuration 23) 23. The program according to configuration 22, which is not installed when the specific software is installed in an information processing device that operates on an operating system that does not have the function of the specific print mode.

[0130] (Configuration 24) 24. The program according to any one of configurations 17 to 23, which operates as resident application software when an operating system is running on the information processing device.

[0131] (Configuration 25) a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction means for restricting installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; an information processing device that operates under the operating system having the functions of: an installation means for installing specific software for providing a printing function different from the printing function of the operating system; The installation means comprises: an installation control means for controlling the specific software to be installed in the information processing device when an operation for installing the specific software is performed and the specific print mode is set to disabled; a display control means for controlling the display of a specific notification regarding a restriction on the specific software when an operation for installing the specific software is performed and the specific print mode is enabled; and An information processing device comprising:

[0132] (Method 1) a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction means for restricting installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; A control method for an information processing device operated by the operating system having the function of an installation step for installing specific software for providing a printing function different from the printing function of the operating system; The installation step includes: an installation control step of controlling the specific software to be installed in the information processing device when an operation for installing the specific software is performed and the specific print mode is set to disabled; a display control step of controlling the display of a specific notification regarding a restriction related to the specific software when an operation for installing the specific software is performed and the specific print mode is enabled; A control method comprising:

[0133] (Configuration 26) a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts the operation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; an information processing apparatus that operates under the operating system having a function as a printer, and that has installed thereon specific software for providing a printing function different from the printing function of the operating system, a reference means for referencing information indicating whether the specific print mode is valid; a control means for controlling the display of a predetermined notification regarding a restriction on the specific software in response to a change in the setting of the specific print mode from disabled to enabled as a result of the reference by the reference means; An information processing device comprising:

[0134] (Method 2) a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts the operation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; 1. A method for controlling an information processing apparatus in which specific software is installed to operate under the operating system having a function as a printer driver and to provide a printing function different from the printing function of the operating system, comprising: a reference step of referencing information indicating whether the specific print mode is valid; a control step of controlling to display a predetermined notice regarding a restriction related to the specific software in response to the setting of the specific print mode being changed from disabled to enabled as a result of the reference in the reference step; A control method comprising:

[0135] (Configuration 27) A storage medium that stores the program according to any one of configurations 1 to 24. [Explanation of symbols]

[0136] 101 PC 102 devices 401 Installer 403 Printer Driver 409 Status Check Section 410 Driver installation section 601,603,606 Warning notification dialog

Claims

1. a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; a program for installing specific software for providing a printing function different from the printing function of the operating system to an information processing device that operates under the operating system having a function as a printing function for a printer, the program comprising: When an operation for installing the specific software is performed and the specific print mode is set to disabled, control is performed so that the specific software is installed in the information processing device; a control means for controlling the display of a specific notification regarding restrictions on the specific software when an operation for installing the specific software is performed and the specific print mode is enabled; A program to function as a

2. the at least one computer; A reference means for referencing information indicating whether the specific print mode is valid or not. It further functions as 2. The program according to claim 1, wherein the control means performs control based on the information referenced by the reference means.

3. 2. The program according to claim 1, wherein the control means controls to display the specific notification without installing the specific software.

4. 2. The program according to claim 1, wherein the control means controls to display the specific notification when the installation of the specific software fails.

5. 5. The program according to claim 4, wherein the control means controls to display the specific notification when the installation of the specific software fails because the specific print mode is enabled.

6. 2. The program according to claim 1, wherein the specific notification indicates that installation cannot be performed.

7. 7. The program according to claim 6, wherein the specific notification indicates that the reason installation cannot be performed is that the specific print mode is enabled.

8. 8. The program according to claim 7, wherein the specific notification includes a message urging the user to disable the specific print mode.

9. 9. The program according to claim 8, wherein the specific notification includes content indicating a countermeasure that a user should take to disable the specific print mode.

10. 2. The program according to claim 1, wherein the control means controls to disable the specific print mode in response to an operation on a specific display item included in the specific notification.

11. 2. The program according to claim 1, wherein the specific notification includes a content related to performing setup other than that related to printing.

12. 2. The program according to claim 1, wherein the control means controls to display the specific notification when a predetermined process related to the installation of the specific software fails.

13. The program described in claim 1, characterized in that the control means controls the installation of second software that provides functions different from the printing function without performing a predetermined process related to the installation of the specific software when an operation to install the specific software is performed and the specific printing mode is set to enabled.

14. 14. The program according to claim 13, wherein the second software is at least one of a scanner driver and a fax driver.

15. 2. The program according to claim 1, wherein the specific notification includes a content indicating that a printing function is available by the operating system.

16. The program according to claim 15, characterized in that the specific notification includes at least one of content indicating that vendor support software that supports printing functions by the operating system is available for use, and content for performing setup to enable such use.

17. a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts the operation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; and a program that operates on the information processing device that operates under the operating system having the function of providing a printing function different from the printing function of the operating system, and that operates on the information processing device in which specific software for providing a printing function different from the printing function of the operating system is installed, the program comprising: a reference means for referencing information indicating whether the specific print mode is valid; a control means for controlling the display of a predetermined notification regarding a restriction on the specific software in response to a change in the setting of the specific print mode from disabled to enabled as a result of the reference by the reference means; A program to function as a

18. 18. The program according to claim 17, wherein the predetermined notification indicates that printing using the specific software is not possible.

19. 19. The program according to claim 18, wherein the predetermined notification indicates that the reason printing cannot be performed using the specific software is that the specific print mode is enabled.

20. 20. The program according to claim 19, wherein the predetermined notification includes a message urging the user to disable the specific print mode.

21. 21. The program according to claim 20, wherein the specific notification includes content indicating a countermeasure that a user should take to disable the specific print mode.

22. The program according to claim 17, which is installed together with the specific software.

23. 23. The program according to claim 22, wherein the program is not installed when the specific software is installed in an information processing device that operates on an operating system that does not have the function of the specific print mode.

24. 18. The program according to claim 17, which operates as resident application software when an operating system is running on the information processing device.

25. a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; an information processing device that operates under the operating system having the functions of: an installation means for installing specific software for providing a printing function different from the printing function of the operating system; The installation means comprises: an installation control means for controlling the specific software to be installed in the information processing device when an operation for installing the specific software is performed and the specific print mode is set to disabled; a display control means for controlling the display of a specific notification regarding a restriction on the specific software when an operation for installing the specific software is performed and the specific print mode is enabled; and An information processing device comprising:

26. a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts installation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; A control method for an information processing device operated by the operating system having the function of an installation step for installing specific software for providing a printing function different from the printing function of the operating system; The installation step includes: an installation control step of controlling the specific software to be installed in the information processing device when an operation for installing the specific software is performed and the specific print mode is set to disabled; a display control step of controlling the display of a specific notification regarding a restriction related to the specific software when an operation for installing the specific software is performed and the specific print mode is enabled; A control method comprising:

27. a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts the operation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; an information processing apparatus that operates under the operating system having a function as a printer, and that has installed thereon specific software for providing a printing function different from the printing function of the operating system, a reference means for referencing information indicating whether the specific print mode is valid; a control means for controlling the display of a predetermined notification regarding a restriction on the specific software in response to a change in the setting of the specific print mode from disabled to enabled as a result of the reference by the reference means; An information processing device comprising:

28. a setting means for setting whether to enable a specific print mode, which is a function of the operating system; a restriction unit that restricts the operation of software for providing a printing function different from the printing function of the operating system when the specific printing mode is enabled; 1. A method for controlling an information processing apparatus in which specific software is installed to operate under the operating system having a function as a printer driver and to provide a printing function different from the printing function of the operating system, comprising: a reference step of referencing information indicating whether the specific print mode is valid; a control step of controlling to display a predetermined notice regarding a restriction related to the specific software in response to the setting of the specific print mode being changed from disabled to enabled as a result of the reference in the reference step; A control method comprising:

29. A storage medium storing the program according to any one of claims 1 to 24.

Citation Information

Patent Citations

  • Information processor and install method of device driver

    JP2017162106A