JP7363291B2 - 情報処理装置、ソフトウェアのインストール方法、及びプログラム - Google Patents

情報処理装置、ソフトウェアのインストール方法、及びプログラム Download PDF

Info

Publication number
JP7363291B2
JP7363291B2 JP2019177273A JP2019177273A JP7363291B2 JP 7363291 B2 JP7363291 B2 JP 7363291B2 JP 2019177273 A JP2019177273 A JP 2019177273A JP 2019177273 A JP2019177273 A JP 2019177273A JP 7363291 B2 JP7363291 B2 JP 7363291B2
Authority
JP
Japan
Prior art keywords
state
setup
software
application
installation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019177273A
Other languages
English (en)
Other versions
JP2021056626A (ja
Inventor
哲也 奥野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2019177273A priority Critical patent/JP7363291B2/ja
Priority to US17/031,038 priority patent/US11321067B2/en
Publication of JP2021056626A publication Critical patent/JP2021056626A/ja
Application granted granted Critical
Publication of JP7363291B2 publication Critical patent/JP7363291B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)

Description

本願は、ソフトウェアのインストールについてユーザの承認を確認する情報処理装置、ソフトウェアのインストール方法、及びプログラムに関するものである。
従来、ソフトウェアのインストールを実行する前にユーザからの承認を受け付ける情報処理装置が種々提案されている。例えば、特許文献1に記載された画像形成装置は、セキュリティを高めたセキュリティ仕様構成のファームウェアがインストールされている場合、そのファームウェアの更新時に、ユーザ認証を実行することで、ファームウェアのインストールに対するユーザの承認を確認している。画像形成装置は、ファームウェアの更新を指示したユーザの権限を確認するために、ユーザIDやパスワードを入力する認証画面を表示する。画像形成装置は、認証画面の入力情報に基づいて、管理者権限のユーザによるログイン認証の成功を確認すると、ファームウェアの更新を行う。
特開2015-52996号公報
上記した画像形成装置では、ソフトウェアをインストールする際に、ユーザ認証を行なうことで、ユーザにより承認を得たソフトウェアのみをインストールできる。これにより、悪意のあるソフトウェアがインストールされることを抑制し、セキュリティを高めることができる。一方で、ソフトウェアをインストールするごとに必ずユーザの承認を確認すると、ユーザビリティの低下を招く。
そこで本願は、ユーザビリティの向上と、セキュリティの向上の両立が図れる情報処理装置、ソフトウェアのインストール方法、及びプログラムを提供することを目的とする。
本願発明に係る情報処理装置は、通信インタフェースと、表示部と、制御部と、を備え、前記制御部は、前記通信インタフェースを介してソフトウェアのインストールを要求するインストール要求を受信すると、自装置の状態が、所定のセットアップが未だなされていない未セットアップ状態であるか、前記所定のセットアップが既になされたセットアップ済状態であるかを判定するセットアップ状態判定処理と、前記セットアップ状態判定処理の結果、前記自装置が前記セットアップ済状態にあると判定した場合、前記ソフトウェアのインストールの承認画面を前記表示部に表示させる表示処理と、前記セットアップ状態判定処理の結果、前記自装置が前記未セットアップ状態にあると判定した場合、前記表示処理を省略する省略処理と、を実行する。
尚、本願発明に係わる承認画面とは、インストールの承認及びキャンセルを選択できる画面を指す。事前にインストールされたソフトウェアの使用を開始する画面や、単に、OKボタンのみを表示する画面は、承認画面ではなく、確認画面である。
また、本明細書に開示される技術は、種々の形態で実現することが可能であり、例えば、上記情報処理装置にソフトウェアをインストール方法、上記情報処理装置における機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の形態で実現することができる。
本願発明に係る情報処理装置、ソフトウェアのインストール方法、プログラムによれば、通信インタフェースを介してインストール要求を受信しても、所定のセットアップが未だなされていない未セットアップ状態では、情報処理装置は、ソフトウェアのインストールに対する承認画面の表示を省略する。これにより、情報処理装置のディーラ等が、エンドユーザに情報処理装置を納品する前に、情報処理装置をセットアップする場合など、未セットアップ状態ではインストールの承認を省略して作業できる。
一方、所定のセットアップが既になされたセットアップ済状態では、情報処理装置は、ソフトウェアのインストールに対する承認画面を表示する。これにより、セットアップ済状態(エンドユーザが使用を開始した後など)、ソフトウェアをインストールする場合に、ユーザによる承認を必要とする。悪意のあるソフトウェアのインストールなどを抑制できる。従って、承認の省略によるユーザビリティの向上と、承認画面の表示によるセキュリティの向上の両立を図ることができる。
MFPの電気的構成を示すブロック図である。 MFPの流通過程でアプリがインストールされる様子を示す図である。 アプリのインストールのパターンを示す図である。 通常インストール処理の内容を示すフローチャートである。 セットアップ状態判定処理の内容を示すフローチャートである。 承認処理の内容を示すフローチャートである。 インストール処理におけるタッチパネルの表示内容の遷移を示す図ある。 警告画面の内容を示す図である。 検証失敗画面の内容を示す図である。 半インストール処理の内容を示すフローチャートである。 アプリ実行処理の内容を示すフローチャートである。 確認画面を示す図である。 別例の確認画面を示す図である。
以下、本願発明に係わる情報処理装置を具体化した一実施形態であるMFP1について図1を参照しつつ説明する。図1は、MFP1の電気的構成を示すブロック図である。
(1.MFPの構成)
MFP(MultiFunction Peripheral)1は、印刷機能、コピー機能、スキャナ機能、FAX機能を備える複合機である。図1に示すように、MFP1は、ROM11、CPU12、RAM13、画像処理回路14、不揮発性メモリ15、印刷部16、画像読取部17、FAXインタフェース18、ユーザインタフェース20、ネットワークインタフェース24、USBIF(インタフェースの略)27などを備えている。これらのCPU12等は、バス10で互いに接続されている。また、MFP1は、商用電源から電力を供給する電源29を備えている。電源29は、電源コードや電源回路(ブリッジダイオード、平滑化回路など)を備え、商用電源から直流電源を生成し、電源線にてMFP1が備える各部へ電力を供給する。
ROM11は、各種のプログラム31を記憶している。プログラム31は、例えば、MFP1の各部を統括的に制御するプログラムである。CPU12は、ROM11からRAM13にロードされたプログラム31を実行し、実行した処理結果をRAM13に一時的に記憶させながら、バス10で接続された各部を制御する。尚、プログラム31を記憶する記憶装置は、ROMに限らず、HDD、NVRAM、フラッシュメモリ、あるいはそれらを組み合わせた記憶装置でも良い。
不揮発性メモリ15は、書き換え可能にデータを記憶保持する不揮発性メモリであって、例えば、EEPROM、NVRAM、フラッシュメモリ、HDDなどが採用できる。不揮発性メモリ15内には、アプリケーションプログラム(以下、アプリと略記する場合がある)33が記憶されている。アプリ33は、例えば、プログラム31から提供される基本的な機能を利用して、各種のサービス等を実現する。アプリ33は、例えば、後述するユーザインタフェース20のタッチパネル21の操作入力に基づいて、タッチパネル21の表示処理を行なう。あるいは、アプリ33は、例えば、画像読取部17で読み取ったスキャンデータを外部サーバへ送信する処理を行なう。また、以下の説明では、CPU12でプログラム31やアプリ33を実行するMFP1のことを、単に装置名で記載する場合がある。例えば、「MFP1がタッチパネル21に対する操作入力を受け付ける」という記載は、「MFP1がCPU12でプログラム31やアプリ33を実行しタッチパネル21を制御することで、タッチパネル21に対する操作入力を受け付ける」ということを意味する場合がある。
画像処理回路14は、印刷ジョブやスキャンジョブなどに係る画像データの加工処理や展開処理等をするための回路である。印刷部16は、シート(紙やOHPなど)に画像データに係わる画像を形成するための印刷エンジンを有する。印刷エンジンは、例えば、露光装置、感光体、トナーカートリッジ等を有し、電子写真方式により印刷を実行する。尚、印刷エンジンは、電子写真方式により印刷する構成に限らず、例えば、インクジェットヘッド等を用いてインクジェット方式で印刷する印刷エンジンであっても良い。
また、印刷部16は、トナーカートリッジ(図示略)の装着の有無を検出する検出部35を有する。検出部35は、例えば、印刷部16に対してトナーカートリッジが装着されると、装着されたことを示す信号をCPU12へ出力する。これにより、CPU12は、MFP1に対して初めてトナーカートリッジが装着されたことや、交換後のトナーカートリッジが装着されたことを検出することができる。検出部35の構成は、特に限定されないが、例えば、リレースイッチなどを用いて機械的にトナーカートリッジの装着を検出しても良い。あるいは、検出部35は、トナーカートリッジに設けられたICチップを読み取って新しいトナーカートリッジの装着を検出しても良い。尚、印刷部16がインクジェット方式などの電子写真方式以外の印刷方式の構成であって場合も、同様に検出を行なうことができる。例えば、検出部35は、上記したリレースイッチを用いた機械的、又はICチップを用いた電気的な方法により、インクカートリッジの着脱を検出しても良い。
画像読取部17は、原稿から画像を読み取るための読取センサを有する。読取センサとしては、例えば、CCD(Charge Coupled Devices)、CIS(Contact Image Sensor)等が採用できる。画像読取部17は、原稿台に載置された原稿に対して読取センサを移動させ、原稿を読み取り、画像データを生成する。FAXインタフェース18は、電話回線を介して、他のファクシミリ装置との間でFAXデータの送受信を行う。
ユーザインタフェース20は、タッチパネル21及びキー22を有する。タッチパネル21は、例えば、液晶パネル、液晶パネルの背面側から光を照射するLED等の光源、液晶パネルの表面に貼り合わされた接触感知膜等を備えている。キー22は、複数の操作ボタンを有する。ユーザインタフェース20は、CPU12の制御に基づいて、例えば各種の設定画面や装置の動作状態等をタッチパネル21に表示する。また、ユーザインタフェース20は、タッチパネル21やキー22に対する操作入力に応じた信号をCPU12へ送信する。尚、本実施形態のMFP1は、表示部と操作部とを兼ねたタッチパネル21を備えているが、特にこれに限らず、表示部とは別に例えばハードウェアキーが操作部として設けられていてもよい。
ネットワークインタフェース24は、例えば、LAN(Local Area Network)インタフェースであり、LANケーブル(図示略)を外部の装置(ルータやPCなど)と接続可能となっている。MFP1は、ネットワークインタフェース24を介して外部の装置から受信したジョブ(印刷ジョブなど)に基づいて、印刷、スキャン、FAX送信等を実行する。尚、MFP1を外部の装置と接続する方法は、有線LANに限らず、例えば、無線LANでも良い。
また、USBIF27は、例えば、USB(Universal Serial Bus)規格に準拠した通信や電力授受を行うインタフェースである。USB規格は、特に限定されないが、USB2.0規格やUSB3.0規格などを採用することができる。USBIF27は、MFP1に取り付けられたUSBポート46に接続されている。USBポート46は、USB機器と接続可能なコネクタ(レセプタクル)である。USBIF27は、CPU12の制御に基づいてUSBポート46に接続されたUSB機器との間でデータの入出力を実行する。
(2.ソフトウェアのインストール)
本実施形態のMFP1は、ネットワークインタフェース24やUSBIF27を介してソフトウェアのインストールを指示するインストール要求を受信し、ソフトウェアのインストールを実行する。本願におけるソフトウェアとは、例えば、MFP1の基本的な機能を提供するプログラム31(ファームウェアなど)や、タッチパネル21の表示などを行なうアプリ33(アプリケーションプログラム)である。尚、本願におけるソフトウェアは、上記した種類に限らず、例えば、各種のソフトウェアに機能を追加するアドオンプログラム、高機能なMFP1の制御に用いられるオペレーティングシステムなどでも良い。以下の説明では、本願のソフトウェアとしてアプリ33を採用した場合について説明する。
MFP1は、ネットワークインタフェース24やUSBIF27を介して受信したインストール要求に基づいて、ネットワークインタフェース24やUSBIF27を介して新しいアプリ33を受信する。MFP1は、受信したアプリ33に基づいて、アプリ33のインストールやアップデートを実行する。尚、インストール要求の情報やアプリ33のデータを受信する方法は、上記したネットワークインタフェース24やUSBIF27を用いる方法に限らない。MFP1は、例えば、インストール要求やアプリ33を受信可能な通信インタフェースとして、IEEE1394規格などの他の規格の通信インタフェースを備えても良い。また、MFP1は、NFC(Near Field Communication)やBluetooth(登録商標)等の無線通信インタフェースを介して、インストール要求やアプリ33を受信しても良い。例えば、MFP1は、Bluetooth(登録商標)インタフェースを介して携帯端末からインストール要求を受信し、ネットワークインタフェース24を介して製造メーカのサーバから新しいアプリ33を受信しても良い。
図2は、MFP1の流通過程でアプリ33がインストールされる様子を示している。尚、図2は、流通過程の様子の一例を示している。図2に示すように、MFP1は、例えば、製造メーカ51で製造され、ディーラ52からエンドユーザ53へ販売及び納品される。アプリ33は、例えば、製造メーカ51、販売業者であるディーラ52、その他のサードパーティ(ソフトウェア開発会社など)によって作成される。
製造メーカ51は、例えば、アプリ33の提供元を証明するための電子署名55及び秘密鍵57を準備する。製造メーカ51は、例えば、電子署名55で証明される公開鍵や秘密鍵57を用いてアプリ33を暗号化し、暗号化したアプリ33及び電子署名55をサーバで提供可能な状態にする。MFP1は、サーバに公開されたアプリ33のインストールを実行する。
ディーラ52は、エンドユーザ53に納品する複数のMFP1に対して同一のアプリ33のインストールを行い、MFP1をセットアップする。ディーラ52は、例えば、製造メーカ51から提供された設定ツールをインストールした端末(PCや携帯端末など)61を操作して、複数のMFP1に対してインストール要求を送信し、複数のMFP1に対してアプリ33を一括してインストールする。MFP1は、インストール要求を受信すると、サーバに公開されたアプリ33をダウンロードしインストールする。アプリ33のインストール工程、例えば、(1)アプリ33及び電子署名55のダウンロード、(2)ダウンロードした電子署名55の検証、(3)秘密鍵57によるアプリ33の復号、(4)復号化したアプリ33の不揮発性メモリ15への展開・レジストリ値の設定などが行なわれる。尚、上記した(1)から(4)の工程の内容や順番は、一例である。
MFP1は、上記した(1)から(4)の全ての処理を実行し、アプリ33のインストールが完了した状態(以下、インストール済状態という)にする。MFP1は、インストール済状態のアプリ33がタッチパネル21で選択された場合、そのアプリ33を起動して起動画面をタッチパネル21に表示等する。一方、MFP1は、アプリ33を半インストール状態とすることも可能となっている。この半インストール状態とする場合では、MFP1は、例えば、上記した(1)から(4)の全ての処理を完了させるものの、インストールが完了していない旨のフラグ値をそのアプリ33に関連付けて不揮発性メモリ15に記憶する。MFP1は、フラグ値に基づいて、半インストール状態のアプリ33と、インストール済状態のアプリ33を区別して管理する。そして、MFP1は、半インストール状態のアプリ33がタッチパネル21で選択された場合、そのアプリ33の実行を確認等する。尚、インストール済状態のアプリ33と、半インストール状態のアプリ33の実行処理の詳細については後述する。
また、本願発明における半インストール状態とは、上記した(1)から(4)の全てを完了させつつ、インストールが完了していなことを示すフラグ値を設定された状態に限らない。例えば、MFP1は、(1)から(4)の何れかの工程でインストールの実行を停止し、アプリ33をインストールが完了していない半インストール状態にしても良い。MFP1は、アプリ33に関連付けたフラグ値により、インストールの処理段階を管理しても良い。そして、MFP1は、アプリ33の実行をタッチパネル21で選択された場合に、インストールの残りの処理を実行しても良い。
また、図2に示すように、エンドユーザ53も、MFP1へアプリ33をインストールする。例えば、エンドユーザ53は、ディーラ52がインストールしたアプリ33以外にも使用したいアプリ33があれば、そのアプリ33をMFP1にインストールする。エンドユーザ53のシステム管理者は、ディーラ52と同様に、製造メーカ51から提供された設定ツールをインストールした端末63を操作して、複数のMFP1に対してインストール要求を送信し、複数のMFP1に対してアプリ33を一括してインストールする。また、半インストール状態のアプリ33については、MFP1は、エンドユーザ53によってタッチパネル21が操作されたタイミングでインストールを完了させ実行する。
(3.通常インストール処理)
次に、本実施形態のMFP1のインストールにおける動作について、図3~図9を参照しつつ、説明する。以下の説明では、図3に示すように、アプリ33のインストールの種類として、パターンP1~P3の3パターンを例に説明する。パターンP1は、ディーラ52(図2参照)がアプリ33をインストール済状態となるまでインストール(以下、通常インストールという)するパターンである。パターンP2は、エンドユーザ53がアプリ33をインストール済状態となるまで通常インストールするパターンである。パターンP3は、ディーラ52がアプリ33を半インストール状態とし、エンドユーザ53がインストールを完了させるパターンである。尚、アプリ33のインストールの種類は、上記したパターンP1~P3の3パターンに限らない。例えば、エンドユーザ53が半インストールを実行しても良い。エンドユーザ53は、例えば、他の部署にMFP1を貸し出すような場合に、端末63により半インストールの処理を実行しても良い。そして、他の部署のユーザが、インストールを完了させても良い。本実施形態のMFP1は、図4以降にフローチャートで示す処理を実行することで、インストールにおける承認処理の実行の有無を、上記したパターンP1~P3等に応じて変更する。
具体的には、図4~図6は、上記した通常インストールを実行する通常インストール処理の内容を示している。パターンP1において、ディーラ52は、例えば、端末61(図2参照)の設定ツールを操作して、通常インストールを実行するか半インストールを実行するかを設定した上で、MFP1に対するインストールを開始する。端末61は、ディーラ52の操作内容に応じて、通常インストール又は半インストールの実行を指示するインストール要求をMFP1に送信する。また、パターンP2において、エンドユーザ53は、例えば、端末63(図2参照)の設定ツールを操作して、MFP1に対する通常インストールを開始する。端末63は、エンドユーザ53の操作内容に応じて、通常インストールの実行を指示するインストール要求をMFP1に送信する。MFP1は、端末61,63から通常インストールのインストール要求を受信すると図4~図6に示す通常インストール処理を実行する(パターンP1,P2)。また、MFP1は、端末61から半インストールのインストール要求を受信すると、後述する半インストール処理(図12参照)を実行する(パターンP3)。尚、上記したインストール要求を送信する方法は、一例である。例えば、ディーラ52は、USBメモリをUSBポート46に接続することで、インストール要求をMFP1へ送信(入力)しても良い。
ここで、例えば、ディーラ52は、エンドユーザ53に複数のMFP1をまとめて販売するような場合、複数のMFP1に対して同一のアプリ33を一括してインストールする。この場合、アプリ33のインストールごとに、MFP1がインストールの承認を確認すると、ディーラ52の作業効率が著しく低下し、ユーザビリティが低下する。一方で、エンドユーザ53が、MFP1を使用する段階では、システム管理者等が、必要なアプリ33をMFP1に追加でインストールする。この場合、提供元の不明なアプリ33等がMFP1にインストールされると、情報の漏洩等が発生する可能性がある。そこで、エンドユーザ53が使用する段階では、インストールに関してエンドユーザ53の承認を確認することが好ましい。本実施形態のMFP1は、図4に示すように、エンドユーザ53が実際に使用を開始する状態をセットアップ済状態と判定し、インストールの承認画面を表示する。一方、MFP1は、エンドユーザ53が使用を開始する前の状態(ディーラ52がアプリ33をインストールする状態など)を未セットアップ状態と判定し、承認画面の表示処理を省略する。尚、後述するように、承認画面の表示処理の省略とは、承認画面そのものを表示しない処理だけでなく、承認画面の表示に替えて確認画面を表示する処理を含んでいる。
また、本明細書のフローチャートは、基本的に、プログラム31に記述された命令に従ったCPU12の処理を示す。即ち、以下の説明における、「受信」、「判定」、「インストール」、「設定」等の処理は、CPU12の処理を表している。CPU12による処理は、ハードウェア制御も含む。
まず、MFP1のCPU12は、例えば、通常インストールのインストール要求を、ネットワークインタフェース24を介して受信すると、セットアップ状態の前後を判定するセットアップ状態判定処理を実行する(S11)。図5は、セットアップ状態判定処理の内容を示している。
CPU12は、図5に示すセットアップ状態判定処理を開始すると、MFP1の状態が初期導入後であるか否かを判定する(S21)。CPU12は、例えば、トナーカートリッジが印刷部16に装着されることに基づいて、初期導入の前後を判定する。トナーカートリッジは、アプリ33のインストールを行うディーラ52によっては装着されず、エンドユーザ53が実際に印刷を行なう段階で装着する可能性が高い。
そこで、CPU12は、例えば、MFP1が製造メーカ51で製造されてから最初にトナーカートリッジが印刷部16に装着されるまでの間を初期導入前と判定し、最初にトナーカートリッジが装着された後を初期導入後と判定する。CPU12は、S21において、印刷部16の検出部35(図1参照)の検出信号に基づいて、最初にトナーカートリッジが印刷部16に装着されるまでの間、否定判定し(S21:NO)、S23を実行する。CPU12は、S23において、セットアップ状態判定処理の結果として、未セットアップ状態と判定する。CPU12は、例えば、未セットアップ状態と判定したことを示すフラグ値をRAM13に記憶する。CPU12は、S23を実行すると、図5に示す処理を終了する。
尚、初期導入後の判定条件は、上記したトナーカートリッジの装着の有無に限らない。例えば、CPU12は、シートの印刷を監視し、最初にシートの印刷が実行されるまでの間、初期導入前であると判定しても良い。また、CPU12は、ユーザからの設定情報に基づいて、初期導入の前後を判定しても良い。ここでいうユーザからの設定情報とは、例えば、タッチパネル21に表示する言語の種類の設定情報、時計の設定情報など、MFP1を使用する上で必要となる設定情報である。また、ユーザからの設定情報とは、例えば、サービスの向上のために、MFP1の使用中に発生したエラーを製造メーカ51に送信する情報収集について、ユーザの許諾を確認した設定情報でも良い。CPU12は、例えば、印刷部16にトナーカートリッジが最初に装着され、MFP1の電源が起動されると、上記した設定情報を受け付ける画面をタッチパネル21に表示する。そして、CPU12は、表示した画面による設定が全て完了するまでの間、初期導入前と判定(S21で否定判定)しても良い。即ち、CPU12は、必要な初期設定が完了するまでの間、未セットアップ状態と判定しても良い。また、CPU12は、トナーカートリッジを最初に装着する条件や、ユーザからの初期設定が完了する条件を組み合わせて、S21における初期導入の前後を判定しても良い。
一方、CPU12は、MFP1に一度でもトナーカートリッジが装着された場合、S21において肯定判定し(S21:YES)、S25を実行する。S25において、CPU12は、デバイスパスワードが設定済みであるか否かを判定する。ここでいうデバイスパスワードとは、例えば、MFP1の管理者権限を確認するための管理者パスワードである。管理者パスワードなどのデバイスパスワードは、MFP1を実際に使用するエンドユーザ53によって設定される可能性が高い。換言すれば、MFP1は、デバイスパスワードが設定されるまでの間、ディーラ52によってセットアップされている可能性が高い。そこで、CPU12は、S25において、デバイスパスワードが未設定であると判定すると(S25:NO)、未セットアップ状態と判定する(S23)。一方、CPU12は、デバイスパスワードが設定済みであると判定すると(S25:YES)、S27を実行する。
尚、デバイスパスワードの設定方法や設定済みの判定方法は、特に限定されない。MFP1は、例えば、Webサーバとして機能するEWS(Embedded Web Server)プログラムをCPU12で実行し、Webページにおいてデバイスパスワードの設定を受け付けても良い。CPU12は、Webページで受け付けたデバイスパスワードを不揮発性メモリ15に記憶する。CPU12は、不揮発性メモリ15にデバイスパスワードが記憶されるまでの間、S25で否定判定し、記憶されていた場合肯定判定しても良い。
S27において、CPU12は、個人情報や機密情報がMFP1内、例えば、不揮発性メモリ15内に記憶されているか否かを判定する。ここでいう個人情報とは、例えば、電話帳、スキャンプロファイル、ショートボタンの登録情報等である。電話帳とは、FAXデータやスキャンデータの送信先として用いられる電話番号、氏名、メールアドレスなどの情報である。スキャンプロファイルとは、画像読取部17における読み取りの設定情報であり、例えば、スキャンデータの解像度、色数などの情報である。ショートカットボタンの登録情報とは、例えば、特定の宛先へFAXデータやスキャンデータを送信する処理をワンタッチで実行する短縮ボタンの登録情報である。
また、機密情報とは、例えば、MFP1に印刷を指示する印刷ジョブの情報、スキャンデータ、FAXデータなど、エンドユーザ53の業務上の機密情報となり得る情報である。このような個人情報や機密情報が、不揮発性メモリ15などに記憶されている場合、エンドユーザ53によってMFP1が使用されている可能性が高い。そこで、CPU12は、S27において、個人情報及び機密情報の何れもが不揮発性メモリ15に記憶されていない場合(S27:NO)、未セットアップ状態と判定する(S23)。一方、CPU12は、個人情報及び機密情報の少なくとも一方が不揮発性メモリ15に記憶されている場合(S27:YES)、セットアップ済状態と判定する。(S29)。S29において、CPU12は、例えば、セットアップ済状態と判定したことを示すフラグ値をRAM13に記憶し、図5に示す処理を終了する。
図4に戻り、CPU12は、S11の処理結果に基づいて、セットアップ済状態であるか否かを判定する(S13)。CPU12は、図5のS23又はS29で設定したフラグ値をRAM13から読み出してセットアップ状態の前後を判定する。CPU12は、未セットアップ状態であると判定すると(S13:NO)、アプリ33のインストールを実行する(S15)。CPU12は、インストール要求を受信したアプリ33のインストールを実行する。CPU12は、S15を実行した後、図4に示す処理を終了する。
図7は、インストール処理におけるタッチパネル21の表示内容の遷移を示している。図7は、通常インストールと、後述する半インストールとの両方の表示内容を示している。また、図7における上側の遷移図は、ディーラ52の操作によって表示される表示内容を示している。また、図7における下側の遷移図は、エンドユーザ53の操作によって表示される表示内容を示している。尚、図7に示す表示内容や遷移の順番等は一例である。
例えば、CPU12は、MFP1の電源を投入されると、図7の左上に示す待機画面71をタッチパネル21に表示させる。CPU12は、待機画面71を表示する状態で、ディーラ52の端末61からインストール要求を受信すると、図4に示す処理を開始する。図3に示すパターンP1では、未セットアップ状態において、ディーラ52がアプリ33を通常インストールする。この場合、CPU12は、図5に示すセットアップ状態判定処理により未セットアップ状態であると判定し、図4のS15でアプリ33のインストールを開始する。CPU12は、後述するインストールの承認画面(図8,図9参照)を表示せずに(表示処理を省略して)、インストールを開始する(図7のS41)。図7のインストール画面73に示すように、CPU12は、製造メーカ51のサーバからアプリ33をダウンロードしてインストールしていることをタッチパネル21に表示し、インストールを実行する。CPU12は、インストールに成功すると、タッチパネル21の表示を待機画面71に戻す(図7のS43)。これにより、未セットアップ状態では、ディーラ52の承認を省略してインストールを実行できる。ディーラ52は、例えば、複数のMFP1に対してまとめてアプリ33をインストールする場合、複数のMFP1に対して端末61からインストール要求を送信するだけで、インストールを完了させることができる。即ち、複数のMFP1に対するセットアップ作業を非常に効率良く行なうことができる。
尚、CPU12は、インストール中にエラーが発生し、インストールに失敗した場合、エラー画面75を表示しても良い(S45)。CPU12は、エラー画面75に、インストールの失敗に関する情報としてエラーコードを表示する。CPU12は、エラー画面75を表示した後、タッチパネル21に対する操作入力等を受け付けると、タッチパネル21に待機画面71を表示する(S47)。
一方、図4のS13において、CPU12は、セットアップ済状態であると判定すると(S13:YES)、承認処理を実行する(S17)。例えば、図3のパターンP2では、セットアップ済状態において、エンドユーザ53がアプリ33のインストールを実行する。この場合、CPU12は、図5に示すセットアップ状態判定処理によりセットアップ済状態と判定し、図4のS17を実行する。図6は、承認処理の内容を示している。CPU12は、図6の承認処理を実行することで、セットアップ状態の前後に応じた画面表示を実行する。
まず、CPU12は、S31において、アプリ33のインストールを開始した時点においてMFP1が未セットアップ状態であったか否かを判定する。CPU12は、未セットアップ状態であると判定すると(S31:YES)、S33を実行し、セットアップ済状態であると判定すると(S31:NO)、S35を実行する。CPU12は、例えば、図4のS11のセットアップ状態判定処理で判定した結果の情報を、インストールするアプリ33と関連付けて不揮発性メモリ15等に記憶することで、S31においてアプリ33のインストールを開始した時点でのセットアップ状態の前後を判定できる。詳細については後述するが、図6に示す承認処理のプログラムは、通常インストール処理と半インストール処理の両方で使用する。共通のサブプログラムとして使用するために、図6のS31では、再度、セットアップ状態の前後を判定している。尚、通常インストール処理における承認処理と、半インストール処理における承認処理とは別プログラムでも良い。この場合、通常インストール処理における承認処理では、S31のようなセットアップ状態の前後を判定せず、S35から(セットアップ済状態と判定した後から)開始しても良い。
図3のパターンP2はセットアップ済状態であるため、CPU12は、S31で否定判定し(S31:NO)、S35を実行する。CPU12は、S35において、インストールするアプリ33の電子署名55を検証する。MFP1にインストール可能なアプリ33の中には、電子署名55で提供元の正当性が証明されているものや、電子署名55がないものなどが混在する。また、電子署名55の中には、ルート認証局やルート認証局に認証された中間認証局などの公的な認証局に認証されたものや、企業・個人などの独自の運用基準を設けた認証局(所謂、私的認証局)に認証されたものがある。本実施形態のMFP1は、例えば、製造メーカ51、ディーラ52、エンドユーザ53のシステム管理者によって認められた電子署名55(公開鍵証明書など)を選択的にインポート可能となっている。例えば、ディーラ52は、製造メーカ51の電子署名55や、信頼できるアプリ33の提供元の電子署名55を、MFP1に予めインポートする。CPU12は、図6のS35において、この予めインポートされた電子署名55に基づいて、アプリ33の電子署名55の検証を行なう。尚、電子署名55の検証を行なう方法は、上記したディーラ52等によって予めインポートされた電子署名55を用いる方法に限らない。例えば、CPU12は、ネットワークインタフェース24を介してルート認証局等から公的に認められた電子署名55をダウンロードし、ダウンロードした電子署名55により、アプリ33に添付されたアプリ33を検証しても良い。
CPU12は、S35において、例えば、アプリ33と一緒に配布されている電子署名55を、予めインポートされた電子署名55に基づいて検証する。CPU12は、次のS37において、S35の検証結果を判定する。CPU12は、電子署名55の検証に成功したと判定すると(S37:YES)、S39を実行する。例えば、予めディーラ52等がインポートした電子署名55で提供元の正当性が証明されたアプリ33であった場合、CPU12は、S39を実行する。一方、CPU12は、電子署名55の検証に失敗したと判定すると(S37:NO)、S40を実行する。例えば、電子署名55が添付されていないアプリ33や、私的認証局で認証された電子署名55(ディーラ52等がインポートした電子署名55以外の電子署名55)が添付されたアプリ33の場合、CPU12は、S40を実行する。
CPU12は、S39において、図8に示す警告画面83を、インストールの承認画面としてタッチパネル21に表示する。図8に示すように、CPU12は、インストールを開始しても良いか確認するメッセージや、「身に覚えのないアプリはインストールしないで下さい」という警告メッセージを警告画面83に表示する。また、CPU12は、アプリ33の参考情報として、アプリ33のID、アプリ33の提供元の情報、アプリ33の作成日時を表示する。また、CPU12は、承認する場合のOKボタン85と、承認しない場合のキャンセルボタン86を警告画面83に表示する。パターンP2の場合であれば、エンドユーザ53は、警告画面83の内容を確認し、インストールするアプリ33についてセキュリティリスクなどを検討し、インストールの有無を判断できる。
また、CPU12は、S40において、図9に示す検証失敗画面87を、インストールの承認画面としてタッチパネル21に表示する。図9に示すように、CPU12は、警告画面83と同様に、インストールの開始メッセージ、警告メッセージ、アプリID等を検証失敗画面87に表示する。また、CPU12は、電子署名の検証に失敗した旨のメッセージを検証失敗画面87に表示する。アプリ33に電子署名55が添付されていない場合、図8に示すように、CPU12は、電子署名の検証に失敗した旨のメッセージとして、「電子署名なし」のメッセージを表示する。また、CPU12は、例えば、アプリ33に電子署名55が添付されているものの、ディーラ52等がインポートした電子署名55で検証に失敗した場合、「電子署名の検証に失敗しました」などのメッセージを表示しても良い。
また、CPU12は、警告画面83と同様に、OKボタン88と、キャンセルボタン89を表示する。これにより、エンドユーザ53は、電子署名55がないアプリ33やディーラ52等に認められていない(動作保証がないなどの)アプリ33がインストールされる可能性を確認できる。エンドユーザ53は、セキュリティリスクが高いことを認識した上で、インストールの実行を判断できる。CPU12は、S39又はS40を実行すると、図6に示す処理を終了する。
CPU12は、図4のS17を実行した後、S17の承認の結果を判定する(S19)。CPU12は、S39で表示した警告画面83でOKボタン85が押された場合、又はS40で表示した検証失敗画面87でOKボタン88が押された場合、S19において肯定判定し(S19:YES)、S15を実行する。この場合、エンドユーザ53によって、アプリ33のインストールが承認された状態となり、アプリ33のインストールが実行される(S15)。これにより、セットアップ済状態においては、エンドユーザ53に対して、アプリ33のインストールに対する承認を確認した上で、インストールを実行できる。
また、CPU12は、S39で表示した警告画面83でキャンセルボタン86が押された場合、又はS40で表示した検証失敗画面87でキャンセルボタン89が押された場合、S19において否定判定し(S19:NO)、図4に示す通常インストール処理を終了する。この場合、エンドユーザ53からインストールの承認を得ることができなかったため、CPU12は、アプリ33のインストールを中止する。CPU12は、アプリ33のデータを消去等する。これにより、エンドユーザ53は、承認画面(警告画面83や検証失敗画面87)でセキュリティリスクを確認し、インストールを中止できる。悪意のあるアプリ33のインストールを防止し、情報漏洩等の発生を抑制できる。
(4.半インストール処理)
次に、半インストールが実行される場合の処理について、図10を参照しつつ、説明する。半インストールが行なわれる場合としては、例えば、図3のパターンP3に示すように、ディーラ52が半インストールした後、エンドユーザ53がインストールを完了させる場合がある。具体的には、ディーラ52は、例えば、端末61(図2参照)の設定ツールを操作して、半インストールを指示するインストール要求をMFP1に送信する。MFP1のCPU12は、半インストールのインストール要求を受信すると、図10に示す半インストール処理を開始する。以下の説明では、図4に示す通常インストール処理と同様の処理内容については、同一の符号を付し、その説明を適宜省略する。
CPU12は、図10のS11においてセットアップ状態の前後を判定する処理(図5参照)を実行し、S13において判定結果を判定する。パターンP3のようにディーラ52が半インストールの作業を行なった場合は、トナーカートリッジが未装着等であるため、CPU12は、S11で未セットアップ状態と判定する。また、仮に、ディーラ52やエンドユーザ53が、トナーカートリッジを装着した後や、デバイスパスワードを設定した後に、半インストールの作業を行なった場合、CPU12は、S11でセットアップ済状態であると判定する。
CPU12は、半インストール処理の場合も、セットアップ済状態であれば、承認を確認した上でインストールを行なう(S17、S19、S15)。一方、CPU12は、未セットアップ状態であると判定すると(S13:NO)、アプリ33の半インストールを実行する(S51)。CPU12は、例えば、上記した(1)から(4)(アプリ33のダウンロードなど)の全てを完了させた後、半インストール状態であることを示すフラグ値をアプリ33に関連付けて不揮発性メモリ15に記憶する。CPU12は、S51を実行した後、図10に示す処理を終了する。これにより、MFP1にアプリ33が、半インストールされる。
(5.アプリ実行処理)
次に、MFP1に通常インストール又は半インストールされたアプリ33が実行された場合の処理内容について、図11~図13を参照しつつ説明する。ここで、MFP1は、例えば、アプリ33を通常インストール又は半インストールされた状態で、ディーラ52からエンドユーザ53へ納品される。CPU12は、MFP1の電源を投入されると、図7に示す待機画面71を表示する。CPU12は、例えば、待機画面71を表示すると、図11のアプリ実行処理を開始する。
CPU12は、待機画面71に表示したアプリアイコン77をタッチ操作されると、アプリ33を選択する選択画面79を表示する(図7のS71)。CPU12は、通常インストールされたアプリ33や半インストールされたアプリ33の名前を一覧にして選択画面79に表示する。
CPU12は、図11の処理を開始すると、選択画面79においてアプリ33の選択を受け付ける(S61)。CPU12は、選択画面79に表示したアプリ33の何れかがタッチ操作されると、S62においてタッチ操作されたアプリ33が半インストール状態であるか否かを判定する。CPU12は、例えば、上記したアプリ33に関連付けられたフラグ値に基づいて、半インストール状態であるか否かを判定する。
CPU12は、選択画面79において通常インストール(インストール済状態)のアプリ33が選択されると(S62:NO)、インストール済状態のアプリ33を実行する(S63)。CPU12は、アプリ33を起動してアプリ33の実行画面81を表示する(図7参照)。CPU12は、S63を実行すると、図11に示す処理を終了する。これにより、未セットアップ状態において予め通常インストールしたアプリ33については、選択画面79で選択するだけで起動できる。
一方、CPU12は、選択画面79で半インストール状態のアプリ33が選択されると、S62で肯定判定し(S62:YES)、承認処理を実行する(S65)。CPU12は、図6の承認処理を開始し、S31においてアプリ33(この場合、実行を選択されたアプリ33)のインストールを開始した時点においてMFP1が未セットアップ状態であったか否かを判定する。選択されたアプリ33は、半インストール状態である。このため、このアプリ33のインストールを開始した時点において、MFP1は、未セットアップ状態となる。CPU12は、上記した半インストール処理において(図5のS23)で設定されたフラグ値に基づいて、未セットアップ状態であることを検出する。
CPU12は、図6のS31で肯定判定すると(S31:YES)、S33を実行する。CPU12は、図12に示す確認画面91をタッチパネル21に表示する(S33)。図12に示すように、CPU12は、「プリインストールされているアプリです。」や「使用を開始しますか?」といったメッセージを確認画面91に表示する。これにより、実行しようとしているアプリ33が未セットアップ状態でインストールされたものであること(半インストール状態であること)を、エンドユーザ53等に報知できる。
また、CPU12は、アプリ33の参考情報として、アプリ33のID、アプリ33の提供元の情報、アプリ33の作成日時を確認画面91に表示する。また、CPU12は、OKボタン93とキャンセルボタン94を、確認画面91に表示する。エンドユーザ53は、確認画面91を見てアプリ33の情報を確認し、アプリ33を実行するか判断できる。CPU12は、S33を実行すると、図6に示す処理を終了する。
CPU12は、図11のS65を実行した後、S65の承認の結果を判定する(S67)。CPU12は、S33で表示した確認画面91でOKボタン93が押された場合、S67において肯定判定し(S67:YES)、S69を実行する。この場合、半インストール状態のアプリ33の実行指示を受け付けた状態となり、CPU12は、アプリ33の最終的なインストールを実行する(S69)。CPU12は、例えば、アプリ33に関連付けられたフラグ値を、半インストール状態を示す値からインストール済状態を示す値に変更することで、インストールを完了させる。図7のインストール画面97に示すように、CPU12は、インストール中であることをタッチパネル21に表示し、インストールを実行する。
CPU12は、インストールに成功するとアプリ33を実行し(S63)、アプリ33の実行画面81を表示する(図7参照)。これにより、セットアップ済状態において、実行しようとしているアプリ33がディーラ52によってプリインストールされたもの、即ち、一定の信頼があるアプリ33であることを、エンドユーザ53に報知できる。
尚、図7に示すように、CPU12は、インストール中にエラーが発生しインストールに失敗すると、エラー画面99を表示する(S73)。CPU12は、エラー画面99にエラーコードを表示した後、タッチパネル21に対する操作入力を受け付けると、タッチパネル21に待機画面71を表示する(S75)。
一方、CPU12は、S33で表示した確認画面91でキャンセルボタン94が押された場合、図11のS67で否定判定し(S67:NO)、図11に示す処理を終了する。この場合、図7のS77に示すように、CPU12は、選択画面79をタッチパネル21に表示する。これにより、エンドユーザ53は、確認画面91の内容を確認した上で、半インストール状態のアプリ33のインストールを中止できる。
尚、CPU12は、アプリ33の実行時に、半インストール状態であることの確認を実行しなくとも良い。例えば、CPU12は、図11のS65、S67を実行せずに、S62で肯定判定した後(S62:YES)、S69を実行しても良い。あるいは、CPU12は、図13に示すように、半インストール状態であることを確認する(承諾する)OKボタン101だけを、確認画面91に表示しても良い。CPU12は、OKボタン101が押されると、S67で肯定判定しS69を実行する。即ち、CPU12は、半インストール状態であることを報知するが、インストールを拒否できないようにしても良い。
(6.MFP1の初期化)
次に、設定の初期化が行なわれた場合のMFP1の動作について説明する。本実施形態のMFP1は、特殊な操作を受け付けた場合に、設定の初期化を実行する。ここでいう特殊な操作とは、例えば、基板上のリセットスイッチの押下などの通常の使用では行なわない操作である。設定の初期化とは、Factory ResetなどのMFP1の設定を工場の出荷時の状態に戻す処理である。本実施形態のMFP1は、設定の初期化が実行されも、上記した未セットアップ状態でインストールされたアプリ33については、不揮発性メモリ15から消去しない。例えば、CPU12は、インストールされた各アプリ33について、セットアップ状態の前後(未セットアップ状態又はセットアップ済状態)を示すフラグ値で管理する。CPU12は、そのフラグ値に基づいて、設定の初期化が行なわれた場合に、セットアップ済状態でインストールされたアプリ33のみを不揮発性メモリ15から消去する。尚、セットアップ状態の前後を判定する方法は、上記したフラグ値を用いる方法に限らない。例えば、CPU12は、アプリ33を記憶する記憶領域を未セットアップ状態のアプリ33と、セットアップ済状態のアプリ33とで分けることで、セットアップ状態の前後を判定しても良い。
また、CPU12は、設定の初期化に合わせて、セットアップ状態の前後を判定する判定情報をリセットしても良い。ここでいう判定情報とは、例えば、図5に示すカートリッジが最初に装着されたことを示す情報、デバイスパスワードが設定ことを示す情報、個人情報などの、未セットアップ状態かセットアップ済状態であるかを判定可能な情報である。これにより、未セットアップ状態のアプリ33を残しつつ、MFP1の状態を、未セットアップ状態に戻すことができる。例えば、任意のエンドユーザ53(A社)に貸し出し等していたMFP1を、別のエンドユーザ53(B社)に貸し出す場合に、設定の初期化を行なうことで、セットアップ済状態で(A社のエンドユーザ53で)インストールされたアプリ33のみを消去し、未セットアップ状態で(ディーラ52で)インストールしたアプリ33だけを残すことができる。そして、CPU12は、カートリッジが最初に装着された情報等を削除し、エンドユーザ53に貸し出す前の状態にMFP1を戻すことができる。尚、CPU12は、設定の初期化に基づいて、未セットアップ状態のアプリ33を含む全てのアプリ33を削除して、製造メーカ51から納品された初期状態にMFP1を戻しても良い。
因みに、MFP1は、情報処理装置の一例である。CPU12は、制御部の一例である。不揮発性メモリ15は、記憶装置の一例である。印刷部16は、画像形成部の一例である。タッチパネル21は、表示部の一例である。ネットワークインタフェース24は、通信インタフェースの一例である。アプリ33は、ソフトウェアの一例である。警告画面83及び検証失敗画面87は、承認画面の一例である。
(7.効果)
以上、上記した実施形態によれば、以下の効果を奏する。
(1)本実施形態のMFP1は、ネットワークインタフェース24と、タッチパネル21と、CPU12と、を備える。CPU12は、ネットワークインタフェース24を介してアプリ33のインストールを要求するインストール要求を受信すると、自装置の状態が、所定のセットアップが未だなされていない未セットアップ状態であるか、所定のセットアップが既になされたセットアップ済状態であるかを判定するS13の処理(セットアップ状態判定処理の一例)を実行する。CPU12は、S13の処理の結果、自装置がセットアップ済状態にあると判定した場合(S13:YES)、アプリ33のインストールの承認画面(警告画面83や検証失敗画面87)をタッチパネル21に表示させるS39、S40の処理(表示処理の一例)と、S13の処理の結果、自装置が未セットアップ状態にあると判定した場合(S13:NO)、S39、S40を省略する処理(省略処理の一例)と、を実行する。
これによれば、ネットワークインタフェース24を介してインストール要求を受信しても、所定のセットアップが未だなされていない未セットアップ状態では、CPU12は、アプリ33のインストールに対する承認画面の表示を省略する。ここで、インストールごとに承認画面を必ず表示する構成では、複数のMFP1に同一のアプリ33をインストールしてセットアップする場合、複数のMFP1のそれぞれを操作して承認を行なう作業が必要となる。セットアップするMFP1の台数の増加に比例して、承認を行う作業時間が長くなってしまう。これに対し、本実施形態のCPU12では、エンドユーザ53にMFP1を納品する前に、ディーラ52等が複数のMFP1をセットアップする場合など、未セットアップ状態ではインストールの承認を省略できる。
一方、セットアップ済状態では、CPU12は、アプリ33のインストールに対する承認画面を表示する。これにより、セットアップ済状態(エンドユーザ53が使用を開始した後など)、アプリ33をインストールする場合に、ユーザによる承認を必要とする。悪意のあるソフトウェアのインストールなどを抑制できる。従って、承認の省略によるユーザビリティの向上と、承認画面の表示によるセキュリティの向上の両立を図ることができる。
(2)また、MFP1は、画像を形成する印刷部16を備える。CPU12は、S13の処理において、画像を形成する際に印刷部16で消費されるトナーカートリッジ(消耗材の一例)が印刷部16に対して最初に装着されるまでの間(S21:NO)、未セットアップ状態であると判定する(S23)。
印刷部16などの画像形成部を備える画像形成装置は、エンドユーザ53に使用される前や商品として店頭で販売される前の状態において、トナーカートリッジなどの消耗材を使用した画像形成を実行する可能性が低い。即ち、消耗材が画像形成部に装着される可能性が低い。そこで、CPU12は、印刷部16に対して最初にトナーカートリッジが装着される前は未セットアップ状態であると判定する。これにより、トナーカートリッジを装着する前に必要なアプリ33をインストールすることで、承認画面の表示を省略して効率的にインストール作業を行うことができる。
(3)また、MFP1は、不揮発性メモリ15をさらに備える。CPU12は、S13の処理において、個人情報及び機密情報の少なくとも一方が不揮発性メモリ15に記憶されている場合(S27:YES)、セットアップ済状態であると判定する(S29)。
ここでいう個人情報とは、例えば、電話帳、メールアドレス、機能を効率良く利用するためのショートカットキーなどである。また、機密情報とは、例えば、使用時に発生した機密データ(スキャンデータ)などである。個人情報や機密情報が不揮発性メモリ15に記憶されている場合、エンドユーザ53によってMFP1の使用が開始されている可能性が高い。そこで、CPU12は、個人情報や機密情報が不揮発性メモリ15に記憶されている場合、セットアップ済状態であると判定する。これにより、エンドユーザ53の使用の実態に合わせてセットアップ状態の前後を精度良く判定できる。
(4)また、CPU12は、S13の処理において、MFP1に対する初期設定が完了している場合(S21:YES、S25:YES)、セットアップ済状態であると判定する(S29)。
本願発明に係る初期設定とは、例えば、使用する言語の設定、時計の設定、IPアドレスの設定、サービス向上のための情報収集に対する同意の設定、デバイスパスワードの設定などである。初期設定が完了している場合、エンドユーザ53によってMFP1の使用が開始されている可能性が高い。そこで、CPU12は、初期設定が完了している場合、セットアップ済状態であると判定する。これにより、エンドユーザ53の使用の実態に合わせてセットアップ状態の前後を精度良く判定できる。
(5)また、CPU12は、S40の処理において、アプリ33の提供元の情報に基づく警告を検証失敗画面87に表示する。また、CPU12は、未セットアップ状態の省略処理において、このようなアプリ33の提供元の情報に基づく警告の表示を省略する。
これによれば、エンドユーザ53等が使用するセットアップ済状態においては、アプリ33の提供元の検証(電子署名55の検証など)を行って警告を表示する。これにより、MFP1の製造メーカ51が動作を保証していないアプリ33がインストールされる場合などに警告を実行できセキュリティを高めることができる。一方、未セットアップ状態においては警告の表示を省略することで、製造メーカ51やディーラ52等の作業員が、出荷前のMFP1に必要なアプリ33をインストールする場合に、効率良くインストール作業を行うことができる。
(6)また、CPU12は、省略処理により表示処理を省略した状態で、未セットアップ状態においてアプリ33をインストールした場合、セットアップ済状態においてアプリ33が実行される際に、アプリ33がインストール済みであることを示す情報をタッチパネル21に表示するS33の処理(第2表示処理の一例)を実行する。
これによれば、セットアップ済状態でアプリ33を使用した場合、そのソフトウェアが未セットアップ状態でインストールされたものであれば、その旨(プリインストール済みである旨)を表示する。これにより、エンドユーザ53は、表示内容を確認することで、未セットアップ状態で既にインストールされたアプリ33であるか否かを確認でき、アプリ33の使用を適切に判断できる。
(7)また、CPU12は、省略処理により表示処理を省略した状態で、未セットアップ状態においてアプリ33をインストールした場合、MFP1に対する設定の初期化が行われても、未セットアップ状態においてインストールされたアプリ33については消去しない。
これによれば、MFP1に対する設定の初期化(Factory Resetなど)が実行され工場出荷時の状態等に戻される操作が行われても、未セットアップ状態でインストールされたアプリ33については消去しない。これにより、有料のアプリ33などの削除したくないソフトウェアを未セットアップ状態でインストールしていた場合、そのソフトウェアが削除されることを抑制できる。
(8)また、CPU12は、省略処理により表示処理を省略した状態で、未セットアップ状態においてアプリ33のインストールを開始した場合、インストールを開始したアプリ33についてインストールが完了していない半インストール状態とする。CPU12は、セットアップ済状態で半インストール状態のアプリ33の実行を受け付けた場合(S62:YES)、半インストール状態である旨を報知し、報知した後でインストールを完了させてアプリ33を実行する(S65、S69、S63)。
これによれば、未セットアップ状態で承認画面の表示を省略してアプリ33のインストールを開始し半インストール状態とする。そして、セットアップ済状態で半インストール状態のアプリ33の実行を受け付けた場合、半インストール状態となっていることを報知してから実行する。これにより、エンドユーザ53は、半インストール状態のアプリ33であることを確認した上でアプリ33の最終的なインストールを実行し、そのアプリ33を起動して使用することができる。
(8.変形例)
尚、本願発明は上記実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内での種々の改良、変更が可能であることは言うまでもない。
例えば、本願におけるソフトウェアは、アプリ33に限らず、アドオンプログラム、オペレーティングシステムでも良い。
また、上記実施形態では、特に言及していないが、MFP1は、未セットアップ状態でインストールしたソフトウェア(アプリ33など)について、セットアップ済状態(エンドユーザ53の使用時など)の操作で削除できないようにしても良い。例えば、CPU12は、エンドユーザ53が操作可能な範囲では、未セットアップ状態のアプリ33を削除できないようにしても良い。
また、CPU12は、図5に示すセットアップ状態判定処理において、S21(初期導入の判定)、S25(デバイスパスワードの判定)、S27(個人情報等の判定)のうち、少なくとも1つの判定処理を実行しても良い。また、CPU12は、S21、S25、S27の順番を入れ替えて実行しても良い。
また、MFP1は、ソフトウェアの半インストールを実行できない構成でも良い。
また、上記実施形態では、本願発明に係わる制御部として、所定のプログラムを実行するCPU12を採用したが、これに限らない。例えば、制御部を、ASIC(Application Specific Integrated Circuit)などの専用のハードウェアで構成してもよい。また、制御部は、例えばソフトウェアによる処理と、ハードウェアによる処理とを併用して動作する構成でもよい。
また、上記実施形態では、本願に係わる情報処理装置として複合機であるMFP1を採用したが、これに限らない。本願に係わる情報処理装置は、プリント機能のみを有するプリンタ装置、あるいはミシンなどのソフトウェアのインストールが可能な様々な装置を採用できる。
1 MFP(処理装置)、12 CPU(制御部)、15 不揮発性メモリ(記憶装置)、16 印刷部(画像形成部)、21 タッチパネル(表示部)、24 ネットワークインタフェース(通信インタフェース)、33 アプリ(ソフトウェア)、83 警告画面(承認画面)、87 検証失敗画面(承認画面)。

Claims (10)

  1. 通信インタフェースと、
    表示部と、
    制御部と、
    を備え、
    前記制御部は、
    前記通信インタフェースを介してソフトウェアのインストールを要求するインストール要求を受信すると、自装置の状態が、所定のセットアップが未だなされていない未セットアップ状態であるか、前記所定のセットアップが既になされたセットアップ済状態であるかを判定するセットアップ状態判定処理と、
    前記セットアップ状態判定処理の結果、前記自装置が前記セットアップ済状態にあると判定した場合、前記ソフトウェアのインストールの承認画面を前記表示部に表示させる表示処理と、
    前記セットアップ状態判定処理の結果、前記自装置が前記未セットアップ状態にあると判定した場合、前記表示処理を省略する省略処理と、
    を実行する、情報処理装置。
  2. 画像を形成する画像形成部を備え、
    前記制御部は、
    前記セットアップ状態判定処理において、画像を形成する際に前記画像形成部で消費される消耗材が前記画像形成部に対して最初に装着されるまでの間、前記未セットアップ状態であると判定する、請求項1に記載の情報処理装置。
  3. 記憶装置をさらに備え、
    前記制御部は、
    前記セットアップ状態判定処理において、個人情報及び機密情報の少なくとも一方が前記記憶装置に記憶されている場合、前記セットアップ済状態であると判定する、請求項1又は請求項2に記載の情報処理装置。
  4. 前記制御部は、
    前記セットアップ状態判定処理において、前記情報処理装置に対する初期設定が完了している場合、前記セットアップ済状態であると判定する、請求項1乃至請求項3の何れか1項に記載の情報処理装置。
  5. 前記制御部は、
    前記表示処理において、前記ソフトウェアの提供元の情報に基づく警告を前記承認画面に表示し、
    前記省略処理において、前記ソフトウェアの提供元の情報に基づく警告の表示を省略する、請求項1乃至請求項4の何れか1項に記載の情報処理装置。
  6. 前記制御部は、
    前記省略処理により前記表示処理を省略した状態で、前記未セットアップ状態において前記ソフトウェアをインストールした場合、前記セットアップ済状態において前記ソフトウェアが実行される際に、前記ソフトウェアがインストール済みであることを示す情報を前記表示部に表示する第2表示処理を実行する、請求項1乃至請求項5の何れか1項に記載の情報処理装置。
  7. 前記制御部は、
    前記省略処理により前記表示処理を省略した状態で、前記未セットアップ状態において前記ソフトウェアをインストールした場合、前記情報処理装置に対する設定の初期化が行われても、前記未セットアップ状態においてインストールされた前記ソフトウェアについては消去しない、請求項1乃至請求項6の何れか1項に記載の情報処理装置。
  8. 前記制御部は、
    前記省略処理により前記表示処理を省略した状態で、前記未セットアップ状態において前記ソフトウェアのインストールを開始した場合、インストールを開始した前記ソフトウェアについてインストールが完了していない半インストール状態とし、
    前記セットアップ済状態で前記半インストール状態の前記ソフトウェアの実行を受け付けた場合、前記半インストール状態である旨を報知し、報知した後でインストールを完了させて前記ソフトウェアを実行する、請求項1乃至請求項7の何れか1項に記載の情報処理装置。
  9. 通信インタフェースと、表示部と、を備える情報処理装置にソフトウェアをインストールする方法であって、
    前記通信インタフェースを介してソフトウェアのインストールを要求するインストール要求を受信すると、自装置の状態が、所定のセットアップが未だなされていない未セットアップ状態であるか、前記所定のセットアップが既になされたセットアップ済状態であるかを判定するセットアップ状態判定工程と、
    前記セットアップ状態判定工程の結果、前記自装置が前記セットアップ済状態にあると判定した場合、前記ソフトウェアのインストールの承認画面を前記表示部に表示させる表示工程と、
    前記セットアップ状態判定工程の結果、前記自装置が前記未セットアップ状態にあると判定した場合、前記表示工程を省略する省略工程と、
    を含むソフトウェアのインストール方法。
  10. 通信インタフェースと、表示部と、を備える情報処理装置の制御をコンピュータに実行させるプログラムであって、
    前記コンピュータに、
    前記通信インタフェースを介してソフトウェアのインストールを要求するインストール要求を受信すると、自装置の状態が、所定のセットアップが未だなされていない未セットアップ状態であるか、前記所定のセットアップが既になされたセットアップ済状態であるかを判定するセットアップ状態判定処理と、
    前記セットアップ状態判定処理の結果、前記自装置が前記セットアップ済状態にあると判定した場合、前記ソフトウェアのインストールの承認画面を前記表示部に表示させる表示処理と、
    前記セットアップ状態判定処理の結果、前記自装置が前記未セットアップ状態にあると判定した場合、前記表示処理を省略する省略処理と、
    を実行させる、プログラム。
JP2019177273A 2019-09-27 2019-09-27 情報処理装置、ソフトウェアのインストール方法、及びプログラム Active JP7363291B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2019177273A JP7363291B2 (ja) 2019-09-27 2019-09-27 情報処理装置、ソフトウェアのインストール方法、及びプログラム
US17/031,038 US11321067B2 (en) 2019-09-27 2020-09-24 Software installing and updating method, and process via communication interface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019177273A JP7363291B2 (ja) 2019-09-27 2019-09-27 情報処理装置、ソフトウェアのインストール方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021056626A JP2021056626A (ja) 2021-04-08
JP7363291B2 true JP7363291B2 (ja) 2023-10-18

Family

ID=75162736

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019177273A Active JP7363291B2 (ja) 2019-09-27 2019-09-27 情報処理装置、ソフトウェアのインストール方法、及びプログラム

Country Status (2)

Country Link
US (1) US11321067B2 (ja)
JP (1) JP7363291B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7460317B2 (ja) * 2018-01-29 2024-04-02 Juki株式会社 縫製システム
KR20210037314A (ko) * 2019-09-27 2021-04-06 삼성전자주식회사 보안 집적 회로를 이용하여 펌웨어를 갱신하기 위한 전자 장치 및 그의 동작 방법

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154473A (ja) 2010-01-26 2011-08-11 Ricoh Co Ltd プログラム、画像形成装置、及びインストール方法
US20160299749A1 (en) 2015-04-13 2016-10-13 Ilantus Technologies Pvt. Ltd. System and method for remote installation of software

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5878256A (en) * 1991-10-16 1999-03-02 International Business Machine Corp. Method and apparatus for providing updated firmware in a data processing system
US5566335A (en) * 1993-03-16 1996-10-15 Hewlett-Packard Company Method and apparatus for firmware upgrades in embedded systems
US5477264A (en) * 1994-03-29 1995-12-19 Eastman Kodak Company Electronic imaging system using a removable software-enhanced storage device
US6347398B1 (en) * 1996-12-12 2002-02-12 Microsoft Corporation Automatic software downloading from a computer network
US6802061B1 (en) * 1996-12-12 2004-10-05 Microsoft Corporation Automatic software downloading from a computer network
US6360362B1 (en) * 1998-02-20 2002-03-19 Intel Corporation Automatic update of camera firmware
US6804774B1 (en) * 2000-05-12 2004-10-12 Hewlett-Packard Development Company, L.P. Software image transition aid comprising building a disk image based on identified hardware
US7251812B1 (en) * 2001-10-31 2007-07-31 Microsoft Corporation Dynamic software update
JP2005050061A (ja) * 2003-07-31 2005-02-24 Canon Inc プッシュ型インストールシステム、情報処理装置、プッシュ型インストール方法およびプログラム
US8527982B1 (en) * 2007-01-12 2013-09-03 moka5. Inc. Auto install virtual machine monitor
US8612773B2 (en) * 2007-05-03 2013-12-17 International Business Machines Corporation Method and system for software installation
US9038056B1 (en) * 2009-03-31 2015-05-19 Avaya Inc. Method and apparatus for performing automatable software upgrades using a lightweight serviceless install agent
JP5960005B2 (ja) * 2012-09-18 2016-08-02 キヤノン株式会社 画像形成装置、アプリケーションのプレインストール方法、およびプログラム
JP2015052996A (ja) 2013-09-09 2015-03-19 キヤノン株式会社 画像形成装置、及び画像形成装置の制御方法
JP2018028842A (ja) * 2016-08-19 2018-02-22 株式会社リコー 情報処理装置、情報処理方法、及び情報処理プログラム
JP2018097888A (ja) 2018-01-16 2018-06-21 キヤノン株式会社 画像形成装置、及び画像形成装置の制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011154473A (ja) 2010-01-26 2011-08-11 Ricoh Co Ltd プログラム、画像形成装置、及びインストール方法
US20160299749A1 (en) 2015-04-13 2016-10-13 Ilantus Technologies Pvt. Ltd. System and method for remote installation of software

Also Published As

Publication number Publication date
US20210096836A1 (en) 2021-04-01
US11321067B2 (en) 2022-05-03
JP2021056626A (ja) 2021-04-08

Similar Documents

Publication Publication Date Title
JP4764112B2 (ja) 電子装置システム
JP7205522B2 (ja) 情報処理システム、情報処理装置およびプログラム
JP2018206147A (ja) 印刷システムおよびプログラム
JP5268694B2 (ja) ライセンス管理システム、画像形成装置およびライセンス管理方法
JP6720519B2 (ja) 情報処理装置、プログラムおよび情報処理システム
JP2014179034A (ja) 情報処理システム、情報処理装置及びプログラム
JP5826198B2 (ja) 画像形成システム、画像形成装置、およびプログラム
JP2019032716A (ja) 印刷システム、プリンタドライバプログラム
JP7363291B2 (ja) 情報処理装置、ソフトウェアのインストール方法、及びプログラム
JP2019016834A (ja) 画像形成装置とその制御方法、及びプログラム
JP6838907B2 (ja) 画像形成装置、制御方法及びプログラム
JP5069820B2 (ja) 画像形成システムおよびユーザマネージャサーバ装置
JP4822084B2 (ja) セキュア印刷設定用プログラムおよびセキュア印刷設定方法
JP5494869B2 (ja) 電子装置システムとその電子装置,制御方法,プログラム,および記録媒体
JP5509929B2 (ja) 情報処理装置、情報処理方法およびプログラム、ならびに、ライセンス管理システム
JP5345923B2 (ja) 情報機器、画像処理装置、情報機器と通信可能な情報処理装置およびそれらを含む情報処理システム
US20230351008A1 (en) Information processing device and method for managing history information of information processing device
JP2006311590A (ja) 画像形成装置およびアプリケーションインストール方法
JP5286232B2 (ja) 画像形成システムおよびユーザマネージャサーバ装置
JP6083302B2 (ja) 画像形成装置およびプログラム
JP2011192117A (ja) 画像形成システムおよびユーザマネージャサーバ装置
JP2011104843A (ja) 画像形成装置、情報処理方法、及び情報処理プログラム
JP2017120582A (ja) システム、情報処理方法、情報処理装置およびプログラム
JP2006271005A (ja) 画像形成装置およびアプリケーションインストール方法
JP2008067248A (ja) データ処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220913

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230831

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230918

R150 Certificate of patent or registration of utility model

Ref document number: 7363291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150