Print support application for terminal, first computer program for terminal, and method for controlling terminal
The print support application addresses the challenge of managing Win32 application installations by dynamically switching screens and guiding users through secure installation processes, enhancing user convenience and security.
Patent Information
- Application Number
- JP2024133292
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-08
- Publication Date
- 2026-02-20
AI Technical Summary
Existing systems lack user-friendly mechanisms to manage and install print applications on terminal devices, particularly when specific applications like Win32 applications are not pre-installed, leading to inconvenience.
A print support application that dynamically switches screens based on the installation status of Win32 applications, guiding users through installation processes within a sandbox environment while ensuring secure and controlled access.
Enhances user convenience by providing intuitive installation guidance based on application presence, improving the overall user experience and security through controlled access.
Smart Images

Figure 2026030360000001_ABST
Abstract
Description
[Technical Field]
[0001] This specification discloses a technology for a terminal device that displays multiple screens. [Background technology]
[0002] Patent Document 1 discloses a system including a client computer, a printer, a device management software distribution server, and a device application distribution server. The client computer stores an application, a device application, and a printer driver. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Publication No. 2020-184229 Summary of the Invention [Problem to be solved by the invention]
[0004] This specification provides a technique that improves user convenience. [Means for solving the problem]
[0005] This specification discloses a print support application for a terminal device. The print support application may be an application for supporting a general-purpose print program implemented in an operating system (OS). The print support application may cause a computer of the terminal device to function as: an acquisition unit that acquires first installation information indicating whether a first Win32 application has been installed on the terminal device; a first display control unit that, if the first installation information indicates that the first Win32 application has been installed, displays a first screen for launching the first Win32 application on a display unit of the terminal device; and a second display control unit that, if the first installation information indicates that the first Win32 application has not been installed, displays a second screen for installing the first Win32 application on the terminal device.
[0006] According to the above configuration, the terminal device displays the first screen on the display unit in accordance with the print support application when the first Win32 application has been installed on the terminal device, and displays the second screen on the display unit when the first Win32 application has not been installed on the terminal device. In this way, the terminal device can switch the screen displayed on the display unit depending on whether the first Win32 application has been installed on the terminal device. This improves user convenience.
[0007] This specification also discloses a first computer program for a terminal device. The first computer program may be a computer program deployed in a sandbox environment. The first computer program may cause a computer of the terminal device to function as an acquisition unit that acquires deployment information indicating whether a second computer program different from the first computer program has been deployed on the terminal device, and the second computer program may be deployed outside the sandbox environment. The acquisition unit may also function as a first display control unit that, if the deployment information indicates that the second computer program has been deployed, displays a first screen for launching the second computer program on a display unit of the terminal device. If the deployment information indicates that the second computer program has not been deployed, displays a second screen for deploying the second computer program on the terminal device on the display unit.
[0008] According to the above configuration, the terminal device, in accordance with the first computer program, displays the first screen on the display unit when the second computer program has been installed in the terminal device, and displays the second screen on the display unit when the second computer program has not been installed in the terminal device. In this way, the terminal device can switch the screen displayed on the display unit depending on whether the second computer program has been installed in the terminal device. This improves user convenience. Here, "installation" is not limited to installing a computer program in the terminal device, but also includes arranging the program's executable file (EXE file), setting file, etc. in a predetermined storage area in the memory of the terminal device.
[0009] A computer-readable recording medium storing the above-mentioned print support application, a terminal device implemented by the above-mentioned print support application, and a method for controlling the terminal device are also novel and useful. Also novel and useful are a computer-readable recording medium storing the above-mentioned first computer program, a terminal device implemented by the above-mentioned first computer program, and a method for controlling the terminal device. [Brief explanation of the drawings]
[0010] [Figure 1] 1 shows the configuration of a communication system. [Figure 2] 1 shows a sequence diagram of a first installation process. [Figure 3] This is a continuation of Figure 2. [Figure 4] An example of an approval screen is shown. [Figure 5] 10 shows an example of an application selection screen. [Figure 6] A sequence diagram of the second installation process is shown. [Figure 7] FIG. 1 shows a sequence diagram of a first printing process. [Figure 8] An example of a setting screen is shown. [Figure 9] An example of a home screen is shown. [Figure 10] FIG. 10 shows a sequence diagram of a second printing process. DETAILED DESCRIPTION OF THE INVENTION
[0011] (Example) (Configuration of communication system 2; Figure 1) As shown in FIG. 1, the communication system 2 includes a PC 10, a printer 100, a first server 200, and a second server 300. The PC 10 and the printer 100 are connected to a local area network (LAN) 4. The PC 10 and the printer 100 can communicate with each other via the LAN 4. The LAN 4 is connected to the Internet 6. The first server 200 and the second server 300 are installed on the Internet 6. The PC 10, the printer 100, the first server 200, and the second server 300 can communicate with each other via the Internet 6. Note that, hereinafter, an application, which is an abbreviation for an application program, may be referred to as an "app."
[0012] (PC10 configuration) The PC 10 is a PC such as a desktop PC, a notebook PC, a tablet PC, etc. The PC 10 includes an operation unit 12, a display unit 14, a communication interface 20, and a control unit 30. Hereinafter, the interface will be referred to as "I / F."
[0013] The operation unit 12 is a user interface that allows a user to input various information to the PC 10. The operation unit 12 includes, for example, a touch panel for displaying software keys (operation area), hardware keys, or both. The hardware keys include, for example, buttons or switches. The display unit 14 is a display or panel for displaying various information. The display is, for example, a liquid crystal display or an organic EL display. The panel may or may not be a touch panel. The panel is, for example, a liquid crystal panel or an organic EL panel. The communication I / F 20 is connected to the LAN 4. The communication I / F 20 may be a wired LAN I / F or a wireless LAN I / F. The communication I / F 20 may be a USB I / F.
[0014] The control unit 30 includes a CPU 32 and a memory 34. The memory 34 includes a main storage device and an auxiliary storage device. As an example, the main storage device includes RAM and cache memory. As an example, the auxiliary storage device may be a ROM, flash memory, a solid state drive (SSD), a hard disk drive (HDD), or a combination thereof. The CPU 32 performs various processes in accordance with programs loaded from the auxiliary storage device to the main storage device.
[0015] An operating system (OS) program 40 is stored in the auxiliary storage device of the memory 34. Hereinafter, the OS program 40 will be referred to as "OS 40." As an example, the OS 40 is Windows. Windows is a registered trademark of Microsoft Corporation.
[0016] The OS 40 includes a generic printing program 42. For example, the generic printing program 42 is an IPP Class Driver. The generic printing program 42 can also be considered a printer driver that is standardly installed in the OS 40, and may be of specifications other than an IPP Class Driver. The generic printing program 42 has generic functions for printing on multiple models of printers provided by multiple printer vendors. Unlike printer drivers specific to each printer, the generic printing program 42 does not support functions specific to each printer. The generic printing program 42 has a function for generating intermediate image data when a print instruction and image data to be printed are acquired. For example, the intermediate image data is XPS data. The generic printing program 42 also has a function for converting the intermediate image data into print data in a format that can be printed by various printers. For example, the print data is PWGRaster data or PDF.
[0017] The auxiliary storage device of the memory 34 may store a program set 44 and a print application 54. The program set 44 includes a Print Support Application (PSA) 46, a launcher program 48, an environment checker 50, and an installer 52.
[0018] PSA 46 is a program that supports the generic printing program 42. "Supporting generic printing program 42" can also be interpreted as supporting processing in accordance with generic printing program 42. PSA may be compatible with only one model provided by a certain printer vendor, or may be compatible with multiple models provided by the same printer vendor. PSA 46 is a program compatible with a printer having the model name "MN1." PSA 46 is provided by the printer vendor of printer 100. PSA 46 is configured to be automatically downloaded from the first server 200 to PC 10 when a printer compatible with PSA 46 (e.g., printer 100) is connected to PC 10. OS 40 can detect that a printer is connected to PC 10 via a USB I / F using Plug and Play (PnP). OS 40 can also detect that a printer is connected to PC 10 via a wired LAN I / F or a wireless LAN I / F. In this embodiment, the PSA 46, the launcher program 48, the environment checker 50, and the installer 52 are packaged. Therefore, when a printer compatible with the PSA 46 is connected to the PC 10, the program set 44 including the PSA 46 is automatically downloaded from the first server 200 to the PC 10. The program set 44 downloaded to the PC 10 is then deployed in the sandbox environment. Here, "deployment" does not necessarily mean that a program is installed on the PC, but also includes storing the program's executable file (EXE file), configuration file, etc. in a predetermined storage area in the PC's memory. Access to the PSA 46 outside the sandbox environment is restricted. The PSA 46 is configured to provide instructions only to one application in the sandbox environment. In this embodiment, the PSA 46 is configured to provide instructions only to the launcher program 48 in the sandbox environment.
[0019] The launcher program 48, the environment checker 50, and the installer 52 are Win32 applications. The launcher program 48, the environment checker 50, and the installer 52 are assigned application IDs "AP1," "AP2," and "AP3," respectively. The application ID is information for identifying an application. As described above, the launcher program 48, the environment checker 50, and the installer 52 included in the program set 44 are placed in a sandbox environment. Unlike the PSA 46, the launcher program 48, the environment checker 50, and the installer 52, which are Win32 applications, can be accessed outside the sandbox environment.
[0020] The launcher program 48 launches a Win32 application in response to an instruction received from the PSA 46. The environment checker 50 checks the environment information of the PC on which the environment checker 50 is installed. The environment information includes information about applications installed on the PC 10. The installer 52 is a program for installing a print application 54 and the like. The installer 52 is a program that requires user account control to execute processing with administrator privileges. User account control is one of the security features.
[0021] The print application 54 is a Win32 application. The print application 54 is assigned the application ID "AP11." The print application 54 is placed outside the sandbox environment. The print application 54 is a program that causes a printer to execute a print function.
[0022] (Configuration of printer 100) Printer 100 is a peripheral device (i.e., a peripheral device such as PC 10) that can execute a printing function to print an image on paper. Printer 100 has a printing mechanism that can execute a printing function. The printing mechanism includes an inkjet, electrophotographic, or thermal print engine. An inkjet print engine has a print head that ejects ink droplets. An electrophotographic print engine has a photosensitive element and an exposure device that emits light to expose the photosensitive element. A thermal print engine has a print head that generates heat using a heater.
[0023] The printer 100 has a model name of "MN1" and is assigned an IP address of "IP1."
[0024] (Configuration of the first server 200) The first server 200 is a server installed on the Internet 6 by a vendor of the OS 42. As an example, the first server 200 is a cloud server that provides the services of the Microsoft Store. The first server 200 may be a single server or a collection of multiple servers.
[0025] The first server 200 stores various programs corresponding to the OS 42. In this embodiment, the first server 200 stores a program set 44.
[0026] (Configuration of the second server 300) The second server 300 is a server installed on the Internet 6 by the printer vendor of the printer 100. The second server 300 may be a single server or a collection of multiple servers.
[0027] The second server 300 stores various programs corresponding to the printer 100. In this embodiment, the second server 300 stores a print application 54.
[0028] (First installation process; Figure 2, Figure 3) 2 and 3, a first installation process for installing the print application 54 on the PC 10 will be described. In the initial state of this process, the program set 44 and the print application 54 are not stored in the memory 34 of the PC 10. The printer 100 is not connected to the LAN 4. In other words, the printer 100 is not connected to the PC 10. Hereinafter, all communications between the PC 10 and other devices are performed via the communication I / F 20 of the PC 10. Therefore, the phrase "via the communication I / F 20" will be omitted. Hereinafter, various processes implemented by the CPU 32 according to a program may be described as being performed primarily by each program (e.g., the OS 40). Furthermore, the print application 54 and other applications access various hardware, such as the display unit 14, the memory 34, and the communication I / F 20, via the OS 40 to perform various processes. Hereinafter, the description will be omitted, as appropriate, of the print application 54 and other applications performing processes via the OS 40.
[0029] In this specification, "obtaining information" is used as a concept that does not necessarily require "requesting the information." In other words, "obtaining information" is a concept that also encompasses "passively receiving information."
[0030] Furthermore, "supplying specific information to a program" can also be said to mean passing specific information to the processing of a program. An example will be explained using a case where memory is shared. "Supplying information to a program" means storing specific identification information that identifies specific information in a memory area in shared memory that is accessible by a computer that executes processing according to a certain program. Furthermore, "obtaining information from a certain program" means obtaining specific information based on the above-mentioned memory area and specific identification information. Methods for supplying / obtaining information between multiple programs include using socket communication and using pipes.
[0031] First, the printer 100 is connected to the LAN 4. As a result, the OS 40 outside the sandbox environment receives the model name "MN1" and the IP address "IP1" from the printer 100 at T10. In this case, the OS 40 determines that the model name "MN1" and the IP address "IP1" have been received for the first time, and at T12 sends a program set request including the model name "MN1" to the first server 200. The program set request is a signal for requesting the first server 200 to send a program set corresponding to the model name in the request.
[0032] At T12, when the first server 200 receives the program set request from the PC 10, it identifies the program set 44 that corresponds to the model name "MN1" in the request. At T14, the first server 200 transmits the identified program set 44 to the PC 10.
[0033] When the OS 40 receives the program set 44 from the first server 200 at T14, it executes a first installation process at T16 to install the program set 44 on the PC 10. As a result, the program set 44 is installed (placed) in the sandbox environment of the PC 10. Next, at T18, the OS 40 displays a notification screen SC2 on the display unit 14 in the form of a pop-up display. The notification screen SC2 is a screen indicating that installation of the program set 44 has been completed. The notification screen SC2 includes a model name area 400 including the model name "MN1" of the printer 100, an image 402 of the printer, and an "Apps" button 404. The "Apps" button 404 is a button for launching the PSA 46 included in the program set 44.
[0034] At T20, the user operates the "APP" button 404. As a result, at T30, the OS 40 supplies a first application launch instruction including the model name "MN1" and IP address "IP1" received at T10 to the PSA 46 in the sandbox environment. The PSA 46 is registered in the program set 44 as the application to be launched first by the OS 40 among the multiple programs included in the program set 44.
[0035] At T30, the PSA 46 is launched in response to receiving a first application launch instruction from the OS 40, determines that the first application launch instruction is a signal transmitted in response to an operation on the “APP” button 404 on the notification screen SC2, and determines that a first predetermined condition is satisfied. Next, the PSA 46 acquires first installation-related information stored in a first predetermined area in the sandbox environment. The first installation-related information is information indicating whether the printing application 54 is already installed on the PC 10. The first installation-related information includes “AP11” if the printing application 54 is already installed on the PC 10. Note that the information indicating that the printing application 54 is already installed on the PC 10 is not limited to an application ID, but may be any information that clearly indicates that the printing application 54 is already installed. The first application information includes “Not Installed” if the printing application 54 is not already installed on the PC 10. Note that the information indicating that the printing application 54 is not already installed on the PC 10 is not limited to “Not Installed,” but may be any information that clearly indicates that the printing application 54 is not already installed. In this process, the PSA 46 acquires first installation-related information including "not installed." In this case, the PSA 46 determines at T32 that the print application 54 is not installed and that the first predetermined condition is satisfied, and therefore determines that the application to be launched is the environment checker 50. Next, at T34, the PSA 46 supplies a second application launch instruction including the application ID "AP2" that identifies the environment checker 50 to the launcher program 48 in the sandbox environment.
[0036] At T34, the launcher program 48 is launched in response to receiving a second application launch instruction from the PSA 46, and identifies the environment checker 50 identified by the application ID “AP2” included in the instruction. Next, at T36, the launcher program 48 supplies a third application launch instruction to the environment checker 50 in the sandbox environment.
[0037] The environment checker 50 is started in response to receiving a third start instruction from the launcher program 48 at T36, and provides an environment information request to the OS 40 at T40. The environment information request is a signal for requesting the OS 40 to transmit environment information. As an example, the environment information request includes an application ID of an application outside the sandbox environment and location information of a storage area where the executable file of the application is located. The environment information request may include the file name of the executable file instead of the application ID. The location information may be folder path information. When the OS 40 receives the environment information request from the environment checker 50, the OS 40 uses the received environment information request to determine whether the application corresponding to the received environment information request is already installed on the PC 10. The OS 40 then provides the determination result to the environment checker 50. If the application is already installed, the OS 40 may provide the environment checker 50 with an application ID corresponding to the application, or may provide the environment checker 50 with information indicating that the application is already installed. Furthermore, when an application is not installed, the OS 40 may supply the environment checker 50 with information "not found," or may supply the environment checker 50 with information clearly indicating that the application is not installed. Below, as an example, a case will be described in which the OS 40 supplies the environment checker 50 with an application ID as information clearly indicating that the application is installed, and a case in which the OS 40 supplies the environment checker 50 with "not installed" as information clearly indicating that the application is not installed.
[0038] When the OS 40 receives an environmental information request from the environment checker 50 at T40, the OS 40 determines whether the printing application 54, which is an application corresponding to the received environmental information request, is already installed on the PC 10. Specifically, the OS 40 determines whether the executable file of the printing application 54 is stored in a second predetermined area outside the sandbox environment. In this process, the executable file of the printing application 54 is not stored in the second predetermined area. In this case, the OS 40 determines that the printing application 54 is not already installed, and in T42, provides the environment checker 50 with environmental information including the second installation-related information "Not Installed." Note that if the executable file of the printing application 54 is stored in the second predetermined area, the OS 40 determines that the printing application 54 is already installed, and provides the environment checker 50 with environmental information including the second installation-related information "AP11."
[0039] When the environment checker 50 acquires the environment information from the OS 40 in T42, it supplies the environment information to the PSA 46 in T44. The environment checker 50 may supply the environment information to the PSA 46 via the launcher program 48, or may supply the environment information to the PSA 46 without via the launcher program 48.
[0040] When the PSA 46 acquires the environmental information from the environment checker 50 in T44, the PSA 46 determines that the environmental information includes the second installation-related information "Not Installed." In this case, the PSA 46 determines in T50 that the printing application 54 is not already installed on the PC 10, and in T52, causes the display unit 14 to display an installation screen SC4. The installation screen SC4 includes a close button 410, a first message 412, and an "Install" button 414. The first message 412 is a message indicating that an application related to the printer 100 exists. With the above configuration, the PSA 46, whose access outside the sandbox environment is restricted, can acquire information outside the sandbox environment via the launcher program 48. Note that the first message 412 may be a message indicating that an application related to the printer can be installed, or may be a message prompting the user to install an application related to the printer. The installation screen SC4 may include the application name of the printing application 54. With this configuration, the user can know which applications are available for installation.
[0041] 3, the user operates the "Install" button 414. In this case, the PSA 46 has accepted the operation on the installation screen SC4, and therefore determines that the application to be launched is the installer 52, and determines that the second predetermined condition is satisfied. In this case, the PSA 46 determines that the application to be launched is the installer 52. Next, in T62, the PSA 46 supplies the launcher program 48 with a fourth application launch instruction including the model name "MN1", the IP address "IP1", and the application ID "AP3" that identifies the installer 52. The fourth application launch instruction is also a signal for instructing installation of the application.
[0042] When the launcher program 48 acquires the fourth application launch instruction from the PSA 46 at T62, the launcher program 48 identifies the installer 52 identified by the application ID “AP3” included in the instruction. Next, at T64, the launcher program 48 supplies a fifth application launch instruction including the model name “MN1,” the IP address “IP1,” and an instruction to obtain administrator privileges to the installer 52 in the sandbox environment.
[0043] When the installer 52 receives the fifth application start instruction from the launcher program 48 at T64, the installer 52 determines that the instruction includes an instruction to obtain administrator authority. In this case, the installer 52 supplies an administrator authority approval request to the OS 40 at T66.
[0044] When the OS 40 acquires the administrator authority approval request from the installer 52 in T66, it displays an approval screen SC6 on the display unit 14 in T68. As shown in FIG. 4, the approval screen SC6 includes a second message 420, a "Yes" button 422, and a "No" button 424. The second message 420 is a message for confirming whether or not to allow the installer 52 to make changes to the PC 10. Note that the approval screen SC6 may also include information about the vendor that provides the first server 200 that is the issuer of the installer 52, a confirmation button for confirming the changes, and the like.
[0045] 3, the user operates the "Yes" button 422. As a result, the OS 40 provides administrator authority to the installer 52 at T72.
[0046] When the installer 52 acquires administrator privileges from the OS 40 in T72, the installer 52 determines that it is permitted to operate with administrator privileges. Specifically, the installer 52 determines that installation of an application on the PC 10 by the installer 52 is permitted. In this case, the installer 52 identifies the model name “MN1” included in the fifth application launch instruction acquired in T64, and in T80, causes the display unit 14 to display an application selection screen SC8 corresponding to the identified model name “MN1.” As shown in FIG. 5 , the application selection screen SC8 includes a model name area 430, an application name area 432 corresponding to the print application 54, an “Install” button 434, and a “Cancel” button 436. Note that if there are multiple applications corresponding to the model name “MN1,” the application selection screen SC8 may include an application selection area for selecting an application to be installed on the PC 10, instead of the application name area 432.
[0047] At T82, the user operates the “Install” button 434. As a result, the installer 52 identifies the application ID “AP11” of the “print application,” and at T84, sends an application request including the identified application ID “AP11” to the second server 300.
[0048] In T84, when the second server 300 receives the application request from the PC 10, the second server 300 identifies the application ID "AP11" in the application request and identifies the printing application 54 stored in the second server 300. Next, in T86, the second server 300 transmits the identified printing application 54 to the PC 10.
[0049] When the installer 52 receives the printing application 54 from the second server 300 in T86, the installer 52 executes a second installation process in T90 to install the printing application 54 on the PC 10. In the second installation process, the installer 52 provides the OS 40 with an installation instruction including the received printing application 54. When the OS 40 receives the installation instruction from the installer 52, the OS 40 registers the executable file of the printing application 54 in the installation instruction in a second predetermined area outside the sandbox environment. The OS 40 also provides the installer 52 with an installation completion notification indicating that the installation of the printing application 54 has been completed. This completes the second installation process. Next, in T92, the installer 52 stores "AP11" in the first installation-related information in a first predetermined area in the sandbox environment. Next, in T94, the installer 52 displays a startup selection screen on the display unit 14 to allow the user to select whether or not to launch the installed printing application 54.
[0050] In a modified example, the installer 52 does not need to send the application request to the second server 300. In this modified example, the installer 52 executes the second installation process using the printing application 54 included in the installer 52 at T90. In another modified example, when the installer 52 receives the printing application 54 from the second server 300 in response to sending the application request to the second server 300, the installer 52 may execute the second installation process using the received printing application 54, and when the installer 52 does not receive the printing application 54 from the second server 300 in response to sending the application request to the second server 300, the installer 52 may execute the second installation process using the printing application 54 included in the installer 52.
[0051] (Second installation process; Figure 6) 6, a second installation process for installing the print application 54 on the PC 10 will be described. The initial state of this process is the same as the initial state of the first installation process in FIGS.
[0052] In T110, the user executes a second access operation on the PC 10 to access the second server 300. As a result, in T112, the OS 40 transmits an access request to the second server 300, and in T114, receives top screen data from the second server 300. In T120, the OS 40 displays a top screen represented by the top screen data on the display unit 14. The top screen is a screen for selecting an app to download to the PC 10.
[0053] At T122, the user performs a download operation on the PC 10 to download the printing application 54. As a result, at T130, the OS 40 sends an application request including the application ID "AP11" of the printing application 54 to the second server 300. Next, at T132, the OS 40 receives the printing application 54 from the second server 300.
[0054] At T140, the user performs an installation operation on the PC 10 to install the printing application 54 on the PC 10. As a result, at T142, the OS 40 performs a third installation process to register the executable file of the printing application 54 and the like in a second predetermined area outside the sandbox environment of the PC 10. This completes the third installation process. Note that after the third installation process is completed, the PC 10 does not store the application ID "AP11" in the first installation-related information in the first predetermined area in the sandbox environment.
[0055] (First printing process; Figure 7) The first print process in which printing is performed using the print application 54 will be described with reference to Figure 7. The initial state of the first print process is the state after the first installation process in Figures 2 and 3. That is, the first installation-related information in the first predetermined area in the sandbox environment includes "AP11."
[0056] In T210, the user executes a device management operation on the PC 10 to display the first setting screen SC10. As a result, in T212, the OS 40 displays the first setting screen SC10 on the display unit 14. As shown in FIG. 8 , the first setting screen SC10 includes a search object 440, a "Printers and Scanners" button 442, a "Mouse" button 444, an "Add" button 446, and a "Printers and Scanners" area 448. The "Printers and Scanners" area 448 includes buttons corresponding to the printers and scanners registered in the PC 10. In this process, the "Printers and Scanners" area 448 includes a button 450 corresponding to the printer 100.
[0057] At T214 in FIG. 7, the user operates the button 450 corresponding to the printer 100. As a result, at T216, the OS 42 displays a second setting screen SC12 corresponding to the printer 100 on the display unit 14. As shown in FIG. 8, the second setting screen SC12 includes a search object 440, a “Printer and Scanner” button 442, a “Mouse” button 444, device information 460, and a printer setting area 462. The device information 460 includes information corresponding to the device selected on the first setting screen SC10. The printer setting area 462 includes a “Printer Queue” button 464 and a “Launch App” button 466. The “Launch App” button 466 is a button for launching the PSA corresponding to the selected printer. When the OS 40 accepts an operation on the “Add” button 446, it executes a search process to search for printers belonging to the LAN 4 and displays a printer list screen on the display unit 14 for selecting a printer to connect to the PC 10. Then, in response to the acceptance of the selection of the specific printer, the specific printer is connected to the PC 10. In this manner, the OS 40 detects that the printer has been connected to the PC 10 via the communication I / F 20, which is a wired LAN I / F or a wireless LAN I / F.
[0058] 7, the user operates the "Launch Application" button 466. As a result, the OS 40 supplies a first application launch instruction including the model name "MN1" and the IP address "IP1" to the PSA 46 at T220.
[0059] In T220, when the PSA 46 acquires a first application launch instruction from the OS 40, the PSA 46 acquires first installation-related information stored in a first predetermined area in the sandbox environment. In this process, the first installation-related information includes “AP11.” Therefore, in T222, the PSA 46 determines that the print application 54 is already installed. In this case, in T230, the PSA 46 displays an application launch screen SC14 corresponding to the application ID “AP11” on the display unit 14. The application launch screen SC14 includes a close button 470, a device information area 472, a third message 474, a “Yes” button 476, and a “No” button 478. The device information area 472 includes the model name “MN1” and the IP address “IP1” included in the first application launch instruction (see T220). The third message 474 is a message for confirming whether or not to launch the print application 54. As described above, the installer 52 installs the printing application 54 on the PC 10 and stores "AP11" in the first installation-related information in the first predetermined area in the sandbox environment (see T92 in FIG. 3). Therefore, the PSA 46, which is restricted from accessing outside the sandbox environment, can obtain the first installation-related information and determine whether the printing application 54 has been installed. Note that the application launch screen SC14 may include a "Launch" button for launching the printing application 54 instead of the "Yes" button 476 and the "No" button 478. In this modification, when the "Launch" button is operated, the same process as when the "Yes" button 476 is operated is executed. Furthermore, the application launch screen SC14 may include the application name of the printing application 54. With this configuration, the user can know the application to be launched.
[0060] At T240, the user operates the “Yes” button 476. In this case, the PSA 46 determines that the third predetermined condition is satisfied because it has accepted the operation on the “Yes” button 476 on the application startup screen SC14. In this case, the PSA 46 determines that the application to be started is the print application 54. Next, at T242, the PSA 46 supplies a sixth application startup instruction including the model name “MN1”, the IP address “IP1”, and the application ID “AP11” that identifies the print application 54 to the launcher program 48 in the sandbox environment.
[0061] At T242, the launcher program 48 acquires the sixth application launch instruction from the PSA 46 and identifies the print application 54 identified by the application ID “AP11” included in the instruction. Next, at T244, the launcher program 48 supplies a seventh application launch instruction including the model name “MN1” and the IP address “IP1” to the print application 54 outside the sandbox environment.
[0062] When the print application 54 acquires the seventh launch instruction from the launcher program 48 in T244, it displays the home screen SC16 on the display unit 14 in T250. As shown in FIG. 9 , the home screen SC16 includes a print button 480 and a printer object 484. The printer object 484 includes information related to the printer 100. The information related to the printer 100 includes the model name "MN1" of the printer 100, the IP address "IP1", and information indicating the status.
[0063] The user executes a print operation at T252. The print operation includes an operation on the print button 480. As a result, the print application 54 displays a file selection screen on the display unit 14 for selecting a file to be printed. The print operation further includes an operation to select a file to be printed on the file selection screen. As a result, the print application 54 displays a print preview screen on the display unit 14, which includes a print preview image corresponding to the selected file and a print execution button. The print operation further includes an operation on the print execution button. As a result, the print application 54 supplies a first print instruction including file information for identifying the file to be printed to the general-purpose print program 42 of the OS 40 at T254.
[0064] When the general-purpose printing program 42 acquires a first print instruction from the printing application 54 at T254, it identifies a file corresponding to the file information in the first print instruction. Next, the general-purpose printing program 42 converts the file into intermediate image data at T256, and supplies a second print instruction including the intermediate image data to the PSA 46 at T258.
[0065] When the PSA 46 acquires a second print instruction from the general-purpose print program 42 in T258, it converts the intermediate image data included in the second print instruction to generate print data in T260. The print data is data compatible with the printer 100. As an example, the print data is PDL data compatible with a printer with the model name "MN1." Next, the PSA transmits the print data to the printer 100 in T262.
[0066] When the printer 100 receives the print data from the PC 10 in T262, it executes printing using the print data in T264. In this way, printing using the print application 54 is executed.
[0067] (Second printing process; Figure 10) A second printing process in which printing is performed using the printing application 54 will be described with reference to FIG. 10. The initial state of the second printing process is the state after the second installation process in FIG. 6. That is, the first installation-related information in the first predetermined area in the sandbox environment includes "not installed." In addition, an executable file for the printing application 54 is stored in a second predetermined area outside the sandbox environment.
[0068] 2 are executed between the PC 10, the printer 100, and the second server 300. In this process, the OS 40 determines that the executable file of the print application 54 is stored in a second predetermined area outside the sandbox environment, and in T342 supplies the environment checker 50 with environment information including the second installation-related information "AP11."
[0069] When the environment checker 50 acquires the environment information from the OS 40 in T342, it supplies the environment information to the PSA 46 in T344. The environment checker 50 may supply the environment information to the PSA 46 via the launcher program 48, or may supply the environment information to the PSA 46 without via the launcher program 48.
[0070] In T344, when the PSA 46 acquires the environmental information from the environment checker 50, the PSA 46 determines that the environmental information includes the second installation-related information "AP11." In this case, in T350, the PSA 46 determines that the print application 54 is already installed in the PC 10, and in T352, stores "AP11" in the first installation-related information in a first predetermined area in the sandbox environment. Next, in T360, the PSA 46 displays the application launch screen SC14 (see FIG. 7) corresponding to the application ID "AP11" on the display unit 14. Thereafter, processes similar to those in T240 to T264 in FIG. 7 are executed between the PC 10 and the printer 100. Note that in a modified example, T352 can be omitted.
[0071] As described above, when the first installation-related information includes "not installed" (T32 in FIG. 2), the PSA 46 acquires the second installation-related information via the launcher program 48. On the other hand, when the first installation-related information includes "AP11" (T222 in FIG. 7), the PSA 46 displays the application launch screen SC14 on the display unit 14 without acquiring the second installation-related information. With this configuration, the application launch screen SC14 can be displayed relatively quickly or with relatively simple processing, compared to a configuration in which the second installation-related information is always acquired via the launcher program 48.
[0072] (Effects of this embodiment) According to the above configuration, if the printing application 54 has already been installed on the PC 10 (T222 in FIG. 7, T350 in FIG. 10), the PC 10 displays the application startup screen SC14 on the display unit 14 (T230 in FIG. 7, T360 in FIG. 10) in accordance with the PSA 46, and if the printing application 54 has not already been installed on the PC 10 (T50 in FIG. 2), the PC 10 displays the installation screen SC4 on the display unit 14 (T52 in FIG. 2). In this way, the PC 10 can switch the screen displayed on the display unit 14 depending on whether the printing application 54 has already been installed on the PC 10. This improves user convenience.
[0073] (Correspondence) The PC 10 is an example of a "terminal device." The PSA 46 is an example of a "print support application." The print application 54 is an example of a "first Win32 application." The first installation-related information and the second installation-related information are examples of "first installation information." The application launch screen SC14 in FIG. 7 is an example of a "first screen." The installation screen SC4 in FIG. 2 is an example of a "second screen." The launcher program 48 is an example of a "second Win32 application." The fourth application launch instruction of T62 in FIG. 3 is an example of an "installation instruction." The first specified area in the sandbox environment is an example of a "specified area." The second installation-related information is an example of "second installation information."
[0074] The PSA 46 is an example of a "first computer program." The print application 54 is an example of a "second computer program." The first installation-related information and the second installation-related information are examples of "location information."
[0075] T32 and T44 in Fig. 2, T222 in Fig. 7, and T344 in Fig. 10 are examples of processing executed by an "acquisition unit." T230 in Fig. 7 and T360 in Fig. 10 are examples of processing executed by a "first display control unit." T52 in Fig. 2 is an example of processing executed by a "second display control unit."
[0076] Although specific examples of the present invention have been described above in detail, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and variations of the specific examples exemplified above. Modifications of the above-mentioned embodiments are listed below.
[0077] (First Modification) The "terminal device" is not limited to a PC, but may be a mobile phone (for example, a smartphone), a PDA, or the like.
[0078] (Second Modification) The "first Win32 application" is not limited to the print application 54, but may be a status monitor, which is a program for checking the status of the printer, or the like.
[0079] (Third Modification) The OS 40 of the PC 10 may use a registry to determine whether the print application 54 has been installed on the PC 10 or not.
[0080] (Fourth Modification) In the above embodiment, the PSA 46, the launcher program 48, the environment checker 50, and the installer 52 are packaged. In a modification, at least one of the PSA 46, the launcher program 48, the environment checker 50, and the installer 52 may be provided as a separate program. As an example, the PSA 46, the launcher program 48, the environment checker 50, and the installer 52 may be provided as separate programs, or the PSA 46 and a program set including the launcher program 48, the environment checker 50, and the installer 52 may be provided as separate programs. In this modification, after the PSA 46, the launcher program 48, the environment checker 50, and the installer 52 are downloaded to the PC 10, the programs 46, 48, 50, and 52 cooperate to execute various processes.
[0081] (Fifth Modification) The first installation-related information may be stored in a third predetermined area outside the sandbox environment. In this modification, at T92 in FIG. 3, the installer 52 stores "AP11" as the first installation-related information in the third predetermined area. In this modification, the PSA 46 acquires the first installation-related information in the third predetermined area via the launcher program 48.
[0082] (Sixth Modification) The first installation-related information does not have to be stored in the sandbox environment of the PC 10. In this modification, the PSA 46 executes the processes from T34 onward after T30 in FIG. 2 without acquiring the first installation-related information.
[0083] (Seventh Modification) The "first computer program" is not limited to a PSA, but may be a Universal Windows Platform (UWP) application, or an application that runs on another framework or platform.
[0084] (Eighth Modification) The "second computer program" is not limited to a Win32 application, but may be a WinFX application or the like.
[0085] (Ninth Modification) In the above embodiment, the first server 200 and the second server 300 are physical servers. However, the first server 200 and the second server 300 are not limited to physical servers and may be virtual servers or virtual machines on a cloud. That is, the vendor may not prepare the hardware for the first server 200 and the second server 300 on its own, but may use an environment provided by an external cloud computing service. In this case, the vendor may prepare programs (i.e., software) for the first server 200 and the second server 300 and implement the first server 200 and the second server 300 by installing the programs in the above environment. In another modification, the first server 200 and the second server 300 may be installed on the Internet 6 by a business operator other than the vendor.
[0086] (Tenth Modification) The "printing device" is not limited to a printer, but may be a device equipped with a print engine, such as a multifunction device or a copying machine.
[0087] (Eleventh Modification) In each of the above embodiments, the processes of FIGS. 2 to 10 are realized by software (for example, programs 40, 42, 46, 48, 50, 52, 54), but at least one of these processes may be realized by hardware such as a logic circuit.
[0088] Furthermore, the technical elements described in this specification or drawings exhibit technical utility either alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. Furthermore, the technologies illustrated in this specification or drawings simultaneously achieve multiple objectives, and achieving one of those objectives is itself technically useful.
[0089] In the scope of the claims at the time of filing, even if each claim depends on only some of the claims, it is not limited to the fact that each claim can depend on only those some of the claims. To the extent that there is no technical contradiction, each claim can also depend on other claims that were not dependent at the time of filing. In other words, the technology of each claim can be combined in various ways as follows: (Item 1) A print support application for a terminal device, comprising: the print support application is an application for supporting a general-purpose print program implemented in an Operating System (OS), The computer of the terminal device, an acquisition unit that acquires first installation information indicating whether a first Win32 application has been installed in the terminal device; a first display control unit that, when the first installation information indicates that the first Win32 application has been installed, causes a first screen for starting the first Win32 application to be displayed on a display unit of the terminal device; a second display control unit that, when the first installation information indicates that the first Win32 application has not been installed, causes the display unit to display a second screen for installing the first Win32 application in the terminal device; This is a print support application. (Item 2) Item 2. The print support application according to item 1, wherein the acquisition unit acquires the first installation information via a second Win32 application that is already installed on the terminal device. (Item 3) When an executable file corresponding to the first Win32 application is stored in the memory of the terminal device, the first installation information indicates that the first Win32 application has been installed; 3. The printing support application of claim 2, wherein if the executable file is not stored in the memory, the first installation information indicates that the first Win32 application is not installed. (Item 4) 4. The print support application according to item 2 or 3, wherein the print support application and the second Win32 application are downloaded to the terminal device in a packaged state. (Item 5) The print support application further configures the computer to: when an operation for installing the first Win32 application in the terminal device is accepted on the second screen, the terminal device is caused to function as a supply unit that supplies an installation instruction to an installer via a second Win32 application that has already been installed in the terminal device; The installer installs on the computer: When the installation instruction is obtained from the print support application, the first Win32 application is installed in the terminal device, and the first installation information indicating that the first Win32 application has been installed in the terminal device is registered in a predetermined area in a memory of the terminal device; 5. The printing support application according to any one of items 1 to 4, wherein the acquisition unit acquires the first installation information from the predetermined area in the memory. (Item 6) 6. The print support application according to item 5, wherein the predetermined area is an area accessible to an application launched in a sandbox environment. (Item 7) The print support application further configures the computer to: when the first installation information acquired from the predetermined area indicates that the first Win32 application is not already installed, the second acquisition unit acquires, via the second Win32 application, second installation information indicating whether the first Win32 application is already installed in the terminal device; the first display control unit causes the display unit to display the first screen when either the first installation information or the second installation information indicates that the first Win32 application has been installed; Item 6. A printing support application according to item 6, wherein the second display control unit displays the second screen on the display unit when both the first installation information and the second installation information indicate that the first Win32 application is not installed. (Item 8) 1. A method for controlling a terminal device having a print support application for supporting a general-purpose print program implemented in an Operating System (OS), comprising: an acquiring step of acquiring first installation information indicating whether a first Win32 application has been installed on the terminal device according to the print support application; a first display control step of displaying a first screen for starting the first Win32 application on a display unit of the terminal device when the first installation information indicates that the first Win32 application has been installed in accordance with the print support application; a second display control step of, when the first installation information indicates that the first Win32 application has not been installed in accordance with the print support application, displaying on the display unit a second screen for installing the first Win32 application in the terminal device; A method comprising: (Item 9) A first computer program for a terminal device, comprising: the first computer program is a computer program deployed in a sandbox environment; The first computer program causes the computer of the terminal device to: an acquisition unit that acquires deployment information indicating whether a second computer program different from the first computer program has been deployed in the terminal device, the second computer program being deployed outside the sandbox environment; a first display control unit that, when the placement information indicates that the second computer program has been placed, causes a first screen for starting the second computer program to be displayed on a display unit of the terminal device; a second display control unit that, when the placement information indicates that the second computer program has not been placed, causes the display unit to display a second screen for placing the second computer program in the terminal device; a first computer program that functions as a (Item 10) 1. A method for controlling a terminal device comprising a first computer program located in a sandbox environment, the method comprising: an acquisition step of acquiring, in accordance with the first computer program, placement information indicating whether a second computer program different from the first computer program has been placed in the terminal device, the second computer program being placed outside the sandbox environment; a first display control step of, when the placement information indicates that the second computer program has been placed, displaying a first screen for starting the second computer program on a display unit of the terminal device in accordance with the first computer program; a second display control step of, when the placement information indicates that the second computer program has not been placed in the terminal device, displaying a second screen on the display unit in accordance with the first computer program; A method comprising: [Explanation of symbols]
[0090] 2: Communication system, 4: LAN, 6: Internet, 10: PC, 12: Operation unit, 14: Display unit, 20: Communication I / F, 30: Control unit, 32: CPU, 34: Memory, 40: OS program, 42: General-purpose printing program, 44: Program set, 46: PSA, 48: Launcher program, 50: Environment checker, 52: Installer, 54: Printing application, 100: Printer, 200: First server, 300: Second server
Claims
1. A print support application for a terminal device, comprising: the print support application is an application for supporting a general-purpose print program implemented in an Operating System (OS), The print support application controls the computer of the terminal device to: an acquisition unit that acquires first installation information indicating whether a first Win32 application has been installed in the terminal device; a first display control unit that, when the first installation information indicates that the first Win32 application has been installed, causes a display unit of the terminal device to display a first screen for launching the first Win32 application; a second display control unit that, when the first installation information indicates that the first Win32 application has not been installed, causes the display unit to display a second screen for installing the first Win32 application in the terminal device; This is a print support application.
2. The print support application according to claim 1 , wherein the acquisition unit acquires the first installation information via a second Win32 application that is already installed on the terminal device.
3. When an executable file corresponding to the first Win32 application is stored in the memory of the terminal device, the first installation information indicates that the first Win32 application has been installed; The print support application of claim 2 , wherein the first installation information indicates that the first Win32 application is not installed if the executable file is not stored in the memory.
4. 3. The print support application according to claim 2, wherein the print support application and the second Win32 application are downloaded to the terminal device in a packaged state.
5. The print support application further configures the computer to: when an operation for installing the first Win32 application in the terminal device is accepted on the second screen, the terminal device functions as a supply unit that supplies an installation instruction to an installer via a second Win32 application that has already been installed in the terminal device; The installer installs on the computer: When the installation instruction is obtained from the print support application, the first Win32 application is installed in the terminal device, and the first installation information indicating that the first Win32 application has been installed in the terminal device is registered in a predetermined area in a memory of the terminal device; The printing support application according to claim 1 , wherein the acquisition unit acquires the first installation information from the predetermined area in the memory.
6. The print support application according to claim 5 , wherein the predetermined area is an area accessible to an application started in a sandbox environment.
7. The print support application further configures the computer to: when the first installation information acquired from the predetermined area indicates that the first Win32 application has not been installed, the terminal device functions as a second acquisition unit that acquires, via the second Win32 application, second installation information indicating whether the first Win32 application has been installed in the terminal device; the first display control unit causes the display unit to display the first screen when either the first installation information or the second installation information indicates that the first Win32 application has been installed; 7. The printing support application of claim 6, wherein the second display control unit causes the second screen to be displayed on the display unit when both the first installation information and the second installation information indicate that the first Win32 application is not installed.
8. A method for controlling a terminal device having a print support application for supporting a general-purpose print program implemented in an Operating System (OS), comprising: an acquiring step of acquiring first installation information indicating whether a first Win32 application has been installed in the terminal device according to the print support application; a first display control step of displaying a first screen for starting the first Win32 application on a display unit of the terminal device when the first installation information indicates that the first Win32 application has been installed in accordance with the print support application; a second display control step of, when the first installation information indicates that the first Win32 application has not been installed in accordance with the print support application, displaying on the display unit a second screen for installing the first Win32 application in the terminal device; A method comprising:
9. A first computer program for a terminal device, comprising: the first computer program is a computer program deployed in a sandbox environment; The first computer program causes the computer of the terminal device to an acquisition unit that acquires deployment information indicating whether a second computer program different from the first computer program has been deployed in the terminal device, the second computer program being deployed outside the sandbox environment; a first display control unit that, when the placement information indicates that the second computer program has been placed, causes a first screen for starting the second computer program to be displayed on a display unit of the terminal device; and a second display control unit that, when the placement information indicates that the second computer program has not been placed, causes the display unit to display a second screen for placing the second computer program on the terminal device; and a first computer program that functions as
10. 1. A method for controlling a terminal device comprising a first computer program located in a sandbox environment, the method comprising: an acquisition step of acquiring, in accordance with the first computer program, deployment information indicating whether a second computer program different from the first computer program has been deployed in the terminal device, the second computer program being deployed outside the sandbox environment; a first display control step of, when the placement information indicates that the second computer program has been placed, displaying a first screen for starting the second computer program on a display unit of the terminal device in accordance with the first computer program; a second display control step of, when the placement information indicates that the second computer program has not been placed in the terminal device in accordance with the first computer program, displaying a second screen on the display unit for placing the second computer program in the terminal device; A method comprising:
Citation Information
Patent Citations
Information processor, information processing method, and program
JP2020184229A