(57)【要約】      （修正有）【課題】ＯＳの再起動を行なわずに画像形成装置の機能を動作させるドライバを更新する方法を提供する。【解決手段】画像形成装置の各機能を動作させるためのドライバの更新方法は、ドライバを更新するための第１のドライバ構成ファイルを取得するステップ（Ｓ１２５０）と、第１のドライバ構成ファイルに基づいて、ＵＩのための第１のＵＩ用ファイルを生成するステップと、インストール時にＯＳによって生成されたレジストリを参照するステップ（Ｓ１２６０）と、レジストリの参照結果と、第１のドライバ構成ファイルとに基づいて、インストール時に用いられた第２のドライバ構成ファイルを更新するステップ（Ｓ１２７０）と、レジストリの参照結果と、第１のＵＩ用ファイルとに基づいて、第２のドライバ構成ファイルからＯＳによって生成された第２のＵＩ用ファイルを更新するステップ（Ｓ１２８０）とを備える。【選択図】図１２
2018085027.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、前記コンピュータにインストールされた、前記コンピュータと通信可能な画像形成装置の各機能を動作させるためのドライバを更新するための方法であって、
前記ドライバを更新するための第１のドライバ構成ファイルを取得するステップと、
前記第１のドライバ構成ファイルに基づいて、前記画像形成装置の機能に関するユーザインターフェイスのための第１のユーザインターフェイス用ファイルを生成するステップと、
前記インストール時にオペレーティングシステムによって生成されたレジストリを参照するステップと、
前記レジストリの参照結果と、前記第１のドライバ構成ファイルとに基づいて、前記インストール時に用いられた第２のドライバ構成ファイルを更新するステップと、
前記レジストリの参照結果と、前記第１のユーザインターフェイス用ファイルとに基づいて、前記第２のドライバ構成ファイルから前記オペレーティングシステムによって生成された第２のユーザインターフェイス用ファイルを更新するステップとを備える、更新方法。
【請求項２】
請求項１に記載の更新方法を管理者権限により実行するタイミングを規定するステップをさらに備える、更新方法。
【請求項３】
前記タイミングは、前記コンピュータにインストールされたオペレーティングシステムへのログイン時を含む、請求項２に記載の更新方法。
【請求項４】
コンピュータが、前記コンピュータにインストールされた、前記コンピュータと通信可能な画像形成装置の各機能を動作させるためのドライバを更新するための方法であって、
前記インストールにより管理者権限を必要とする第１記憶部に格納された第１のドライバ構成ファイルを管理者権限を必要としない第２記憶部に移動するステップと、
前記インストールにより管理者権限を必要とする第３記憶部に格納された第１のユーザインターフェイス用ファイルを管理者権限を必要としない第４記憶部に移動するステップと、
前記第１記憶部に、前記第１のドライバ構成ファイルを指し示す第１のリンクを生成するステップと、
前記第３記憶部に、前記第１のユーザインターフェイス用ファイルを指し示す第２のリンクを生成するステップと、
前記ドライバを更新するための第２のドライバ構成ファイルを取得するステップと、
前記第２のドライバ構成ファイルに基づいて、前記画像形成装置の各機能に関するユーザインターフェイスのための第２のユーザインターフェイス用ファイルを生成するステップと、
前記第２記憶部に格納された前記第１のドライバ構成ファイルを、前記第２のドライバ構成ファイルに基づいて更新するステップと、
前記第４記憶部に格納された前記第１のユーザインターフェイス用ファイルを、前記第２のユーザインターフェイス用ファイルに基づいて更新するステップとを備える、更新方法。
【請求項５】
前記第２のユーザインターフェイス用ファイルに基づいて更新された前記第１のユーザインターフェイス用ファイルを、前記第２のリンクに基づいて特定するステップと、
前記特定された更新後の前記第１のユーザインターフェイス用ファイルに基づいて、前記画像形成装置の機能に関するユーザインターフェイスを生成するステップとを備える、請求項４に記載の更新方法。
【請求項６】
前記第２記憶部および前記第４記憶部は、前記コンピュータが通信可能なサーバに配置される、請求項５に記載の更新方法。
【請求項７】
請求項１〜６のいずれか１項に記載の方法をコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この開示は、画像形成装置の各機能を動作させるためのドライバを更新する技術に関する。
【背景技術】
【０００２】
近年、プリンタ機能、スキャナ機能、ＦＡＸ（facsimile）機能、コピー機能などの複数の機能を有する画像形成装置が用いられている。このような画像形成装置の中には、情報処理端末と通信可能に構成され、情報処理端末からの指令に従い動作するものもある。
【０００３】
一般的に、情報処理端末が画像形成装置を動作させる場合には、スキャナドライバ、ＦＡＸドライバ、プリンタドライバといった、画像形成装置の各機能を動作させるためのドライバを情報処理端末にインストールする必要がある。
【０００４】
また、画像形成装置に新たな機能を追加する場合や、画像形成装置の不具合を修正する目的で、上記のドライバがアップデートされることがある。この場合、情報処理端末にインストールされたドライバは更新される必要がある。このドライバを更新するために、様々な技術が提案されている（特許文献１〜４）。
【０００５】
例えば、特許文献２は、「バージョン、対応機種、対応ＯＳなどを特定するためのドライバ情報を取得するドライバ情報取得部と、ローカルサーバーからドライバ情報ファイルを取得するドライバ情報ファイル取得部と、取得したドライバ情報ファイルの記述に、ドライバ情報の記述を追記することにより、新たなドライバ情報ファイルを生成するドライバ情報ファイル生成部とを備え」るドライバ更新システムを開示している（「要約」参照）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１６−０５８０４１号公報
【特許文献２】特開２００９−２１７３１９号公報
【特許文献３】特開２００６−０９９７４７号公報
【特許文献４】特開２００４−２３４４８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
情報処理端末におけるドライバの更新は、一般的に外部サーバや、画像形成装置からインストーラをダウンロードし、当該インストーラにより実現される。しかしながら、このようなオペレーティングシステム（ＯＳ：Operating  System）のドライバインストールシステムを利用したインストーラは、印刷スプーラ等の機能の停止、印刷ポートの再作成などを伴うため、ＯＳ（情報処理端末）の再起動処理を要する。ユーザは、ＯＳを再起動している間、情報処理端末を利用出来ない。そのため、再起動を伴うことなく、情報処理端末にインストールされたドライバを更新する技術が必要とされている。
【０００８】
また、一般的に、ドライバの更新は、ＯＳにおける管理者権限を有するユーザのみが実行可能であって、管理者権限を有さないユーザは、ドライバの更新を行なうことが難しい。そのため、管理者権限を有さないユーザも、容易にドライバの更新を行なうことができる技術が必要とされている。
【０００９】
本開示は、上記のような問題を解決するためになされたものであって、ある局面における目的は、ＯＳの再起動を行なわずに画像形成装置の機能を動作させるドライバを更新する方法を提供することである。他の局面における目的は、管理者権限を有さないユーザであっても、容易に画像形成装置の機能を動作させるドライバを更新する方法を提供することである。
【課題を解決するための手段】
【００１０】
ある実施形態に従うと、コンピュータが、コンピュータにインストールされた、コンピュータと通信可能な画像形成装置の各機能を動作させるためのドライバを更新するための方法が提供される。この方法は、ドライバを更新するための第１のドライバ構成ファイルを取得するステップと、第１のドライバ構成ファイルに基づいて、画像形成装置の機能に関するユーザインターフェイスのための第１のユーザインターフェイス用ファイルを生成するステップと、インストール時にオペレーティングシステムによって生成されたレジストリを参照するステップと、レジストリの参照結果と、第１のドライバ構成ファイルとに基づいて、インストール時に用いられた第２のドライバ構成ファイルを更新するステップと、レジストリの参照結果と、第１のユーザインターフェイス用ファイルとに基づいて、第２のドライバ構成ファイルからオペレーティングシステムによって生成された第２のユーザインターフェイス用ファイルを更新するステップとを備える。
【００１１】
好ましくは、上記の方法は、上記に記載の更新方法を管理者権限により実行するタイミングを規定するステップをさらに備える。
【００１２】
さらに好ましくは、タイミングは、コンピュータにインストールされたオペレーティングシステムへのログイン時を含む。
【００１３】
他の局面に従うと、コンピュータが、コンピュータにインストールされた、コンピュータと通信可能な画像形成装置の各機能を動作させるためのドライバを更新するための方法が提供される。この方法は、インストールにより管理者権限を必要とする第１記憶部に格納された第１のドライバ構成ファイルを管理者権限を必要としない第２記憶部に移動するステップと、インストールにより管理者権限を必要とする第３記憶部に格納された第１のユーザインターフェイス用ファイルを管理者権限を必要としない第４記憶部に移動するステップと、第１記憶部に、第１のドライバ構成ファイルを指し示す第１のリンクを生成するステップと、第３記憶部に、第１のユーザインターフェイス用ファイルを指し示す第２のリンクを生成するステップと、ドライバを更新するための第２のドライバ構成ファイルを取得するステップと、第２のドライバ構成ファイルに基づいて、画像形成装置の各機能に関するユーザインターフェイスのための第２のユーザインターフェイス用ファイルを生成するステップと、第２記憶部に格納された第１のドライバ構成ファイルを、第２のドライバ構成ファイルに基づいて更新するステップと、第４記憶部に格納された第１のユーザインターフェイス用ファイルを、第２のユーザインターフェイス用ファイルに基づいて更新するステップとを備える。
【００１４】
好ましくは、上記の方法は、第２のユーザインターフェイス用ファイルに基づいて更新された第１のユーザインターフェイス用ファイルを、第２のリンクに基づいて特定するステップと、特定された更新後の第１のユーザインターフェイス用ファイルに基づいて、画像形成装置の機能に関するユーザインターフェイスを生成するステップとをさらに備える。
【００１５】
さらに好ましくは、第２記憶部および第４記憶部は、コンピュータが通信可能なサーバに配置される。
【００１６】
さらに他の局面に従うと、上記に記載の方法をコンピュータに実現させるためのプログラムが提供される。
【発明の効果】
【００１７】
ある実施形態に従う画像形成装置の機能を動作させるドライバの更新方法は、ＯＳを再起動することなく情報処理端末にインストールされたドライバを更新することができる。
【００１８】
開示された技術的特徴の上記および他の目的、特徴、局面および利点は、添付の図面と関連して理解されるこの発明に関する次の詳細な説明から明らかとなるであろう。
【図面の簡単な説明】
【００１９】
【図１】印刷システムの構成例について説明する図である。
【図２】情報処理端末のハードウェア構成の一例を説明する図である。
【図３】情報処理端末の機能構成の一例を説明する図である。
【図４】プリンタドライバを情報処理端末にインストールするための処理の一例について説明する図である。
【図５】ユーザインターフェイス画面の一例を説明する図である。
【図６】ドライバ能力定義ファイルの一例について説明する図である。
【図７】図６に示されるドライバ能力定義ファイルに対応するユーザインターフェイス画面を説明する図である。
【図８】ドライバ能力定義ファイルの他の例について説明する図である。
【図９】図８に示されるドライバ能力定義ファイルに対応するユーザインターフェイス画面を説明する図である。
【図１０】情報処理端末に格納される各種ファイルのアクセス権限について説明する図である。
【図１１】プリンタドライバのインストール時における処理を説明するフローチャートである。
【図１２】プリンタドライバの更新処理の一例について説明するフローチャートである。
【図１３】ユーザが印刷アプリケーションを用いて印刷を行なうときの情報処理端末２００における処理を説明するフローチャートである。
【図１４】実施形態２に従う印刷システムの構成例を説明する図である。
【図１５】実施形態２に従うプリンタドライバのインストール時における処理を説明するフローチャートである。
【図１６】実施形態２に従うプリンタドライバの更新処理の一例について説明するフローチャートである。
【図１７】実施形態３に従う印刷アプリケーションを用いて印刷を行なうときの情報処理端末における処理を説明するフローチャートである。
【図１８】実施形態３に従う印刷システムの構成例について説明する図である。
【発明を実施するための形態】
【００２０】
以下、この技術的思想の実施形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。なお、以下で説明される各実施の形態および各変形例は、適宜選択的に組み合わされてもよい。
【００２１】
［実施形態１］
（印刷システム１）
図１は、印刷システム１の構成例について説明する図である。印刷システム１は、画像形成装置１００と、コンピュータとしての情報処理端末２００Ａ，２００Ｂと、サーバ３００とを有する。以下、情報処理端末２００Ａ，２００Ｂを総称して「情報処理端末２００」とも言う。印刷システム１に含まれる各デバイスは、互いにインターネットやＬＡＮ（Local  Area  Network）などのネットワークを介して通信可能に構成される。
【００２２】
画像形成装置１００は、プリンタ機能、スキャナ機能、およびＦＡＸ機能を有するＭＦＰ（Multi-Function  Peripheral）として機能する。情報処理端末２００およびサーバ３００は、一例として、一般的なコンピュータで構成され得る。
【００２３】
画像形成装置１００は、情報処理端末２００からプリント指示を受け付け、プリント動作を実行する。情報処理端末２００は、ユーザから画像形成装置１００に対する指示の入力を受け付ける。サーバ３００は、画像形成装置１００の機能を動作させるドライバ（例えば、プリンタドライバ、スキャナドライバ、ＦＡＸドライバ）を更新するためのドライバ構成ファイルを情報処理端末２００に提供する。
【００２４】
（情報処理端末２００）
図２は、情報処理端末２００のハードウェア構成の一例を説明する図である。図２を参照して、情報処理端末２００は、情報処理端末２００の動作を制御するためのＣＰＵ（Central  Processing  Unit）２０と、ＣＰＵ２０で実行されるプログラムなどを記憶するためのＲＯＭ（Read  Only  Memory）２１と、ＣＰＵ２０でプログラムを実行する際の作業領域として機能するためのＲＡＭ（Random Access Memory）２２とを有する。
【００２５】
情報処理端末２００はさらに、画像データをファイルとして記憶したり他の情報を記憶したりするためメモリ２３と、情報を表示するための表示装置２４と、ユーザの情報処理端末２００に対する操作入力を受け付けるための入力装置２５と、上記ネットワークを介した通信を制御するためネットワークコントローラ２６とを含む。
【００２６】
表示装置２４は、液晶ディスプレイ、有機ＥＬディスプレイ（Organic  Electroluminescence  display）その他のディスプレイにより実現され得る。入力装置２５は、マウス、キーボード等により実現され得る。
【００２７】
図３は、情報処理端末２００の機能構成の一例を説明する図である。図３を参照して、情報処理端末２００は、ドライバ更新アプリケーション３２０と、インストーラ３３０と、ＯＳ３４０と、ドライバ能力表示部３５０と、プリンタドライバ３６０と、印刷アプリケーション３７０とを含む。一例として、これらの機能構成を実現するための複数のプログラムがＲＯＭ２１に格納され得る。
【００２８】
プリンタドライバ３６０は、情報処理端末２００（ＯＳ３４０）が画像形成装置１００のプリンタ機能を動作させるためのプログラムである。
【００２９】
ドライバ更新アプリケーション３２０は、情報処理端末２００にインストールされた画像形成装置１００の機能を動作させるためのドライバを更新する。本開示において、ドライバ更新アプリケーション３２０は、一例として、プリンタドライバ３６０を更新する。なお、他の局面において、ドライバ更新アプリケーション３２０は、スキャナドライバ、ＦＡＸドライバその他の画像形成装置１００の機能を動作させるためのドライバを更新し得る。
【００３０】
ＣＰＵ２０は、ドライバ更新アプリケーション３２０を実行することにより、ドライバファイル取得部３２２と、レジストリ参照部３２４と、ファイルパス生成部３２６と、ドライバファイル書込み部３２８として機能し得る。
【００３１】
ドライバファイル取得部３２２は、サーバ３００に格納される更新用のプリンタドライバ構成ファイル３１０をサーバ３００からダウンロードする。
【００３２】
レジストリ参照部３２４は、ＯＳ３４０が生成したレジストリ３４４を参照する。より具体的には、レジストリ参照部３２４は、ＯＳ３４０がプリンタドライバ３６０を情報処理端末２００にインストールしたときに生成したレジストリ３４４を参照する。
【００３３】
ファイルパス生成部３２６は、プリンタドライバ３６０の更新にあたり、更新の対象となるファイルへのファイルパス、および更新対象のファイルの名称（ファイル名）を特定する。
【００３４】
ドライバファイル書込み部３２８は、ファイルパス生成部３２６が特定したファイルパスおよびファイル名に基づいて、更新対象のファイルに更新のために必要なデータを書き込む。
【００３５】
インストーラ３３０は、プリンタドライバ３６０やその他のアプリケーションを情報処理端末２００に導入（インストール）するためのソフトウェアである。
【００３６】
ＯＳ３４０は、情報処理端末２００の動作を制御するためのソフトウェアである。ＯＳ３４０は、プリンタドライバ３６０により画像形成装置１００の機能を動作させる。
【００３７】
ＯＳ３４０は、主な機能構成として、スケジューラ３４２と、レジストリ３４４と、第１記憶部３４６と、第２記憶部３４８とを有する。
【００３８】
スケジューラ３４２は、予め定められたタイミングで、予め定められたプログラム（アプリケーション）を管理者権限により実行する。ある局面において、ＯＳ３４０は、Ｗｉｎｄｏｗｓ（登録商標）であって、スケジューラ３４２は、Ｗｉｎｄｏｗｓ（登録商標）に搭載されるタスクスケジューラであり得る。スケジューラ３４２に登録された処理は、ＯＳ３４０へログインしたユーザが管理者権限を有するか否かに関わらず、管理者権限を有するユーザの処理として実行される。
【００３９】
レジストリ３４４は、ＯＳ３４０で用いられる設定情報などを管理するデータベースとして機能する。ある局面において、レジストリ３４４は、ＯＳ３４０の動作の履歴を示す履歴情報として機能する。
【００４０】
第１記憶部３４６は、プリンタドライバ３６０を情報処理端末２００にインストールした際に用いられたプリンタドライバ構成ファイルを格納する。なお、ある局面において、プリンタドライバ構成ファイルは、複数のファイルにより構成されるファイル群であり得る。
【００４１】
第２記憶部３４８は、第１記憶部３４６に格納されるプリンタドライバ構成ファイルに基づいてＯＳ３４０が生成したユーザインターフェイス（ＵＩ）用ファイルを格納する。ＵＩ用ファイルは、プリンタドライバ３６０が制御可能な画像形成装置１００の能力（機能）を示す情報である。
【００４２】
第１記憶部３４６および第２記憶部３４８は、ＲＯＭ２１またはメモリ２３によって実現され得る。
【００４３】
ドライバ能力表示部３５０は、印刷アプリケーション３７０を用いた印刷の際に、第２記憶部３４８に格納されるＵＩ用ファイルに基づいて、プリンタドライバ３６０の能力情報を読み取る。ドライバ能力表示部３５０は、読み取ったプリンタドライバ３６０の能力情報から印刷設定のためのユーザインターフェイス画面を印刷アプリケーション３７０に提供する。印刷アプリケーション３７０は、このユーザインターフェイス画面を表示装置２４に表示して、ユーザの指定する印刷設定を受け付ける。なお、他の局面において、ドライバ能力表示部３５０は、印刷アプリケーション３７０に含まれ得る。次に、図４を用いてプリンタドライバ３６０を情報処理端末２００にインストールするための処理について説明する。
【００４４】
（プリンタドライバ３６０のインストール）
図４は、プリンタドライバ３６０を情報処理端末２００にインストールするための処理の一例について説明する図である。
【００４５】
情報処理端末２００は、サーバ３００にアクセスして、プリンタドライバ構成ファイル４０５をダウンロードする。なお、他の局面において、情報処理端末２００は、ＤＶＤ（Digital  Versatile  Disc）、ＵＳＢ（Universal  Serial  Bus）メモリその他の媒体を介してプリンタドライバ構成ファイル４０５を取得し得る。
【００４６】
情報処理端末２００のインストーラ３３０は、取得したプリンタドライバ構成ファイル４０５を、第１記憶部３４６に格納する。インストーラ３３０は、プリンタドライバ構成ファイル４０５を構成する複数のファイルのうち、プリンタドライバ３６０が制御可能な画像形成装置１００の能力（機能）を示すドライバ能力定義ファイル４３０を特定する。図４に示される例において、ドライバ能力定義ファイル４３０は、「ＦｉｌｅＮａｍｅＸＹＺ」のファイル名で生成される。このファイルは、一例として、ＧＰＤまたはＰＰＤファイルであり得る。
【００４７】
インストーラ３３０は、ドライバ能力定義ファイル４３０と、ＯＳ情報を持つファイルとを結合して、ＵＩ用ファイル４４０を生成する。インストーラ３３０は生成したＵＩ用ファイル４４０を第２記憶部３４８に格納する。図４に示される例において、ＵＩ用ファイル４４０は、「ＦｉｌｅＮａｍｅＡＢＣ．ＧＤＰ」のファイル名で生成される。このように、ドライバ能力定義ファイル４３０と、ＵＩ用ファイル４４０とは互いに異なる記憶領域（例えば、フォルダ）に、異なるファイル名で記憶され得る。
【００４８】
上記の通り、プリンタドライバ３６０を更新して、更新後のプリンタドライバ３６０をユーザに操作可能な状態にするためには、第１記憶部３４６に展開されるプリンタドライバ構成ファイルを更新するだけではなく、ＵＩ用ファイル４４０も更新する必要がある。
【００４９】
第１記憶部３４６および第２記憶部３４８は、ファイルシステム４１０のうち管理者領域４２０に格納される。管理者領域４２０は、ＯＳ３４０における管理者権限を有するユーザのみがアクセスし得る記憶領域である。そのため、管理者領域４２０に格納されたプリンタドライバ構成ファイルと、ＵＩ用ファイル４４０とを更新するためには、管理者権限が必要となる。管理者権限を有さないユーザであってもこれらのファイルを更新可能にする制御は、図１０〜図１２を用いて後述される。
【００５０】
（ドライバ能力定義ファイル４３０とユーザインターフェイス画面との関係）
次に、図５〜図８を用いて、ドライバ能力定義ファイル４３０と、印刷設定のためのユーザインターフェイス画面との関係について説明する。
【００５１】
図５は、ユーザインターフェイス画面の一例を説明する図である。図５には、印刷設定のためのユーザインターフェイス画面５００が示される。
【００５２】
ユーザインターフェイス画面５００は、ユーザが設定可能な各種印刷設定を含む。そのうち、設定５１０に含まれる設定は、選択される画像形成装置（プリンタドライバ）によって変更され得る。図５に示される例において、画像形成装置１００が選択されている。そのため、設定５１０に含まれる設定は、プリンタドライバ３６０（が制御可能な画像形成装置１００の能力（機能））に依存する。図５に示される例において設定５１０は、例えば、両面印刷を行なうか否かの設定、部単位印刷を行なうか否かの設定、印刷の向きの設定、用紙サイズの設定を含む。他の局面において、設定５１０には、カラー設定、解像度の設定、用紙種類の設定などを含み得る。
【００５３】
図６は、ドライバ能力定義ファイル４３０の一例について説明する図である。図６に示される例において、ドライバ能力定義ファイル４３０は、両面印刷の設定に関する記述６１０を含む。そのため、このドライバ能力定義ファイル４３０に基づくＵＩ用ファイル４４０から生成される図７のユーザインターフェイス画面７００には、両面印刷を行なうか否かの設定７１０が表示されている。
【００５４】
図８は、ドライバ能力定義ファイル４３０の他の例について説明する図である。図８に示される例において、ドライバ能力定義ファイル４３０は、両面印刷の設定に関する記述を含まない。そのため、このドライバ能力定義ファイル４３０に基づくＵＩ用ファイル４４０から生成される図９のユーザインターフェイス画面９００には、両面印刷を行なうか否かの設定が表示されていない。次に、図１０を用いて、情報処理端末２００におけるアクセス権限について説明する。
【００５５】
（管理者権限）
図１０は、情報処理端末２００に格納される各種ファイルのアクセス権限について説明する図である。
【００５６】
情報処理端末２００は、プロセスシステム１０１０と、ファイルシステム４１０とを含む。プロセスシステム１０１０は、ＯＳ３４０のプロセスシステムである。プロセスシステム１０１０は、管理者プロセス１０２０と、ユーザプロセス１０３０とを含む。
【００５７】
管理者プロセス１０２０は、管理者権限を有するユーザの指示により動作するプロセスである。管理者プロセス１０２０には、インストーラ３３０、スケジューラ３４２、およびドライバ更新アプリケーション３２０が含まれる。
【００５８】
ユーザプロセス１０３０は、管理者権限の有無に関わらずユーザの指示により動作するプログラムである。ユーザプロセス１０３０には、印刷アプリケーション３７０およびプリンタドライバ３６０が含まれる。
【００５９】
ファイルシステム４１０には、管理者領域４２０と、ユーザ領域１０４０とが含まれる。管理者領域４２０は、ＯＳ３４０における管理者権限を有するユーザのみがアクセスし得る記憶領域である。管理者領域４２０には、プリンタドライバ構成ファイルおよびＵＩ用ファイル４４０などが格納される。ユーザ領域１０４０は、管理者権限の有無に関わらずユーザがアクセスし得る記憶領域である。
【００６０】
管理者プロセス１０２０は、管理者領域４２０およびユーザ領域１０４０にアクセス可能である。一方、ユーザプロセス１０３０は、ユーザ領域１０４０にはアクセス可能であるが、管理者領域４２０にはアクセスできない。
【００６１】
図１０に示されるように、プリンタドライバ３６０を更新するためには、換言すれば、管理者領域に配置されたプリンタドライバ構成ファイルやＵＩ用ファイル４４０を更新するためには、管理者権限が必要となる。そのため、管理者権限を有さないユーザは、容易にプリンタドライバ３６０を更新することができずに、不便を感じ得る。そこで、以下に、管理者権限を有さないユーザであってもこれらのファイルを更新可能にする制御について説明する。
【００６２】
（プリンタドライバ３６０のインストール）
図１１は、プリンタドライバ３６０のインストール時における処理を説明するフローチャートである。図１１に示される処理は、ＣＰＵ２０がインストーラ３３０、およびＯＳ３４０として機能することにより実現され得る。
【００６３】
ステップＳ１１１０において、管理者権限を有するユーザが、入力装置２５を用いて情報処理端末２００にプリンタドライバ３６０のインストール指示を入力する。
【００６４】
ステップＳ１１２０において、インストーラ３３０は、ユーザの指示に従い、プリンタドライバ３６０のインストールを実行する。
【００６５】
ステップＳ１１３０において、ＯＳ３４０は、インストール用のプリンタドライバ構成ファイルを第１記憶部３４６へコピーする。
【００６６】
ステップＳ１１４０において、ＯＳ３４０は、プリンタドライバ構成ファイルに基づいて、印刷設定に関するユーザインターフェイスのためのＵＩ用ファイル４４０を生成する。ＯＳ３４０は、生成したＵＩ用ファイル４４０を第２記憶部３４８に格納する。
【００６７】
ステップＳ１１３０〜Ｓ１１４０の処理により、プリンタドライバ３６０が情報処理端末２００にインストールされる。
【００６８】
ステップＳ１１５０において、ＯＳ３５０は、プリンタドライバ３６０のインストール時に用いられたプリンタドライバ構成ファイルの場所、ＵＩ用ファイル４４０の格納場所を指し示すレジストリ３４４を生成する。
【００６９】
ステップＳ１１６０において、インストーラ３３０は、ドライバ更新アプリケーション３２０を情報処理端末２００にインストールする。
【００７０】
ステップＳ１１７０において、インストーラ３３０は、スケジューラ３４２に、ドライバ更新アプリケーション３２０が起動するタイミングを登録する。一例として、インストーラ３３０は、ＯＳ３４０に（管理者権限の有無に関わらず）ユーザがログインしたタイミングで、ドライバ更新アプリケーション３２０が起動するように設定する。スケジューラ３４２により起動されるアプリケーションは、管理者権限により実行される。
【００７１】
なお、他の局面において、ステップＳ１１６０およびステップＳ１１７０の処理は、管理者権限を有するユーザにより手動で実行されてもよい。
【００７２】
（プリンタドライバ３６０の更新）
図１２は、プリンタドライバ３６０の更新処理の一例について説明するフローチャートである。図１２に示される処理は、ＣＰＵ２０がスケジューラ３４２、およびドライバ更新アプリケーション３２０として機能することにより実現され得る。
【００７３】
ステップＳ１２１０において、スケジューラ３４２は、ＯＳ３４０にユーザがログインしたか否かを判断する。なお、スケジューラ３４２は、ユーザが管理者権限の有無を有するか否かについては判断しない。
【００７４】
スケジューラ３４２は、ユーザがＯＳ３４０にログインしたと判断した場合（ステップＳ１２１０においてＹＥＳ）、処理をステップＳ１２２０に進める。一方、スケジューラ３４２は、ユーザがＯＳ３４０にログインしていないと判断した場合（ステップＳ１２１０においてＮＯ）、処理をステップＳ１２１０に戻す。
【００７５】
ステップＳ１２２０において、スケジューラ３４２は、ドライバ更新アプリケーション３２０を管理者権限により起動する。
【００７６】
ステップＳ１２３０において、ドライバ更新アプリケーション３２０は、ドライバファイル取得部３２２として、サーバ３００にアクセスする。
【００７７】
ステップＳ１２４０において、ドライバ更新アプリケーション３２０は、ドライバファイル取得部３２２として、サーバ３００に更新用のプリンタドライバ構成ファイルがあるか否かを判断する。ある局面において、ドライバ更新アプリケーション３２０は、プリンタドライバ３６０のバージョンが、サーバ３００に格納されるプリンタドライバ構成ファイルのバージョン未満である場合に、更新用のプリンタドライバ構成ファイルがあると判断し得る。
【００７８】
ドライバ更新アプリケーション３２０は、更新用のプリンタドライバ構成ファイルがあると判断した場合（ステップＳ１２４０においてＹＥＳ）、処理をステップＳ１２５０に進める。一方、ドライバ更新アプリケーション３２０は、更新用のプリンタドライバ構成ファイルがないと判断した場合（ステップＳ１２４０においてＮＯ）、一連の処理を終了する。
【００７９】
ステップＳ１２５０において、ドライバ更新アプリケーション３２０は、ドライバファイル取得部３２２として、更新用のプリンタドライバ構成ファイルをサーバ３００から取得する。
【００８０】
ステップＳ１２６０において、ドライバ更新アプリケーション３２０は、レジストリ参照部３２４として、レジストリ３４４を参照する。ドライバ更新アプリケーション３２０はさらに、ファイルパス生成部３２６として、レジストリ３４４の参照結果から、現在インストールされているプリンタドライバ３６０を構成するプリンタドライバ構成ファイルの格納場所（第１記憶部３４６の場所）と、ＵＩ用ファイル４４０の格納場所（第２記憶部３４８の場所）とを特定する。
【００８１】
ステップＳ１２７０において、ドライバ更新アプリケーション３２０は、ドライバファイル書込み部３２８として、取得した更新用のプリンタドライバ構成ファイルに基づいて、第１記憶部３４６に格納されるプリンタドライバ構成ファイルを更新する。ある局面において、ドライバ更新アプリケーション３２０は、第１記憶部３４６に格納されるプリンタドライバ構成ファイルに対し、取得した更新用のプリンタドライバ構成ファイルの情報を書き込むことにより、第１記憶部３４６に格納されるプリンタドライバ構成ファイルを更新する。
【００８２】
ステップＳ１２８０において、ドライバ更新アプリケーション３２０は、ドライバファイル書込み部３２８として、取得した更新用のプリンタドライバ構成ファイル（を構成するドライバ能力定義ファイル）に対応する更新用のＵＩ用ファイルに基づいて、第２記憶部３４８に格納されるＵＩ用ファイル４４０を更新する。ある局面において、ドライバ更新アプリケーション３２０は、第２記憶部３４８に格納されるＵＩ用ファイル４４０に対し、更新用のＵＩ用ファイルの情報を書き込むことにより、ＵＩ用ファイル４４０を更新する。
【００８３】
なお、更新用のプリンタドライバ構成ファイルに対応する更新用のＵＩ用ファイルは、ＯＳ３４０が、更新用のプリンタドライバ構成ファイルを構成するドライバ能力定義ファイルと、ＯＳ情報とを結合することにより生成される。
【００８４】
（印刷のフロー）
図１３は、ユーザが印刷アプリケーション３７０を用いて印刷を行なうときの情報処理端末２００における処理を説明するフローチャートである。図１３に示される処理は、ＣＰＵ２０が印刷アプリケーション３７０、およびＯＳ３４０として機能することにより実現され得る。
【００８５】
ステップＳ１３１０において、ユーザは入力装置２５を操作して印刷アプリケーション３７０を起動するための指示を入力する。これにより、ステップＳ１３２０において、印刷アプリケーション３７０が起動する。
【００８６】
ステップＳ１３３０において、ユーザは、印刷アプリケーション３７０が表示装置２４に表示するユーザインターフェイス画面を操作して、印刷メニュー（項目）を選択する。
【００８７】
ステップＳ１３４０において、印刷アプリケーション３７０は、選択された項目をＯＳ３４０に出力する。より具体的には、印刷アプリケーション３７０は、選択された項目に対応するＵＩ用ファイルをＯＳ３４０に要求する。
【００８８】
ステップＳ１３５０において、ＯＳ３４０は、第２記憶部３４８に格納されるＵＩ用ファイル４４０に基づいて、選択された項目に対応するＵＩ用ファイルを生成する。
【００８９】
ステップＳ１３６０において、ＯＳ３４０は、生成したＵＩ用ファイルを印刷アプリケーション（に含まれるドライバ能力表示部３５０）に出力する。
【００９０】
ステップＳ１３７０において、印刷アプリケーション３７０は、入力されたＵＩ用ファイルに基づき、選択された項目に対応するユーザインターフェイス画面を表示装置２４に表示する。
【００９１】
ステップＳ１３８０において、ユーザは、表示装置２４に表示するユーザインターフェイス画面を操作して印刷を実行する。
【００９２】
上記によれば、印刷システム１は、プリンタドライバ３６０の更新にあたり、ＯＳ３４０のインストーラを用いないため、ＯＳ３４０を再起動することなくプリンタドライバ３６０を更新できる。そのため、印刷システム１のユーザは、プリンタドライバ３６０の更新のたびに、作業が中断されるといった不具合を感じることがなくなる。
【００９３】
加えて、印刷システム１は、スケジューラ３４２により、予め定められたタイミングになるとドライバ更新アプリケーション３２０を管理者権限で起動する。そのため、管理者権限を有さないユーザであっても、容易にプリンタドライバ３６０を更新できる。また、ドライバ更新アプリケーション３２０がＯＳ３４０へのユーザログイン時に起動する場合、ユーザは、常に最新のプリンタドライバ３６０を使用できる。
【００９４】
［実施形態２］
実施形態１に従う印刷システム１は、スケジューラにより予め定められたタイミングでプリンタドライバ３６０を更新する。実施形態２に従う印刷システムは、ユーザの任意のタイミングでプリンタドライバの更新を可能にする。
【００９５】
（印刷システム１４００）
図１４は、実施形態２に従う印刷システム１４００の構成例を説明する図である。なお、図１４に示される部分のうち、図３と同一符号を付している部分については上記と同じであるため、その部分についての説明は繰り返さない。
【００９６】
印刷システム１４００を構成する情報処理端末１４１０は、ドライバ更新アプリケーション３２０に替えてドライバ更新アプリケーション１４２０を有する。また、情報処理端末１４１０は、第３記憶部１４４６と、第４記憶部１４４８とをさらに有する。これら第３記憶部１４４６および第４記憶部１４４８は、ユーザ領域１０４０に配置される。
【００９７】
（プリンタドライバ３６０のインストール）
図１５は、実施形態２に従うプリンタドライバ３６０のインストール時における処理を説明するフローチャートである。図１５に示される処理は、ＣＰＵ２０がインストーラ３３０、およびＯＳ３４０として機能することにより実現され得る。なお、図１５に示される処理のうち、図１１と同一符号を付している部分は同じ処理であるため、その部分についての説明は繰り返さない。
【００９８】
ステップＳ１５１０において、ＯＳ３４０は、レジストリ３４４を生成した後に、プリンタドライバ３６０のインストールが完了したことをインストーラ３３０に通知する。
【００９９】
ステップＳ１５２０において、インストーラ３３０は、インストール完了通知の入力に応じて、レジストリ３４４を参照して、プリンタドライバ３６０のインストール時に用いられたプリンタドライバ構成ファイルの場所（第１記憶部３４６の場所）、およびＵＩ用ファイル４４０の格納場所（第２記憶部３４８の場所）を特定する。
【０１００】
ステップＳ１５３０において、インストーラ３３０は、プリンタドライバ構成ファイルを第１記憶部３４６から、管理者権限を必要としない第３記憶部１４４６へ移動する。
【０１０１】
ステップＳ１５４０において、インストーラ３３０は、ＵＩ用ファイル４４０を第２記憶部３４８から、管理者権限を必要としない第４記憶部１４４８へ移動する。
【０１０２】
ステップＳ１５５０において、インストーラ３３０は、移動されたプリンタドライバ構成ファイルを指し示すリンク（シンボリックリンク）を第１記憶部３４６に作成する。このリンクは、ＯＳ３４０のファイルシステムの機能である。ＣＰＵ２０は、当該リンクを通じて、移動されたプリンタドライバ構成ファイルを参照できる。
【０１０３】
ステップＳ１５６０において、インストーラ３３０は、移動されたＵＩ用ファイル４４０を指し示すリンク（シンボリックリンク）を第２記憶部３４８に作成する。ＣＰＵ２０は、当該リンクを通じて、移動されたＵＩ用ファイル４４０を参照できる。
【０１０４】
ステップＳ１５７０において、インストーラ３３０は、管理者権限が不要なユーザ領域１０４０にドライバ更新アプリケーション１４２０をインストールする。
【０１０５】
（プリンタドライバ３６０の更新）
図１６は、実施形態２に従うプリンタドライバ３６０の更新処理の一例について説明するフローチャートである。図１６に示される処理は、ＣＰＵ２０がドライバ更新アプリケーション１４２０として機能することにより実現され得る。なお、図１６に示される処理のうち、図１２と同一符号を付している部分は同じ処理であるため、その部分についての説明は繰り返さない。
【０１０６】
ステップＳ１６１０において、ユーザは入力装置２５を用いて任意のタイミングでドライバ更新アプリケーション１４２０の実行指示を行なう。なお、このドライバ更新アプリケーション１４２０は、ユーザ領域１０４０に配置されているため、管理者権限の有無に関わらず、ユーザは当該アプリケーションを実行できる。
【０１０７】
ステップＳ１６２０において、ドライバ更新アプリケーション１４２０は、第３記憶部１４４６の場所、および第４記憶部１４４８の場所を特定する。例えば、ドライバ更新アプリケーション１４２０は、インストーラ３３０の動作の履歴情報に基づき、これらの場所を特定し得る。
【０１０８】
ステップＳ１６３０において、ドライバ更新アプリケーション１４２０は、取得した更新用のプリンタドライバ構成ファイルに基づいて、第３記憶部１４４６に格納されるプリンタドライバ構成ファイルを更新する。
【０１０９】
ステップＳ１６４０において、ドライバ更新アプリケーション１４２０は、取得した更新用のプリンタドライバ構成ファイル（を構成するドライバ能力定義ファイル）に対応する更新用のＵＩ用ファイルに基づいて、第４記憶部１４４８に格納されるＵＩ用ファイル４４０を更新する。
【０１１０】
（印刷のフロー）
図１７は、実施形態３に従う印刷アプリケーション３７０を用いて印刷を行なうときの情報処理端末２００における処理を説明するフローチャートである。図１７に示される処理は、ＣＰＵ２０が印刷アプリケーション３７０、およびＯＳ３４０として機能することにより実現され得る。なお、図１７に示される処理のうち、図１３と同一符号を付している部分は同じ処理であるため、その部分についての説明は繰り返さない。
【０１１１】
ステップＳ１７１０において、ＯＳ３４０は、第２記憶部３４８に格納されるリンク（シンボリックリンク）を通じて、第４記憶部１４４８に格納されるＵＩ用ファイル４４０を参照し、印刷アプリケーション３７０の要求に従うＵＩ用ファイルを生成する。
【０１１２】
上記によれば、実施形態２に従う印刷システム１４００は、プリンタドライバ構成ファイルおよびＵＩ用ファイル４４０の実体ファイルを、ユーザ領域に格納することにより、管理者権限の有無に関わらず、ユーザの任意のタイミングで、これらのファイルを更新することができる。換言すれば、印刷システム１４００は、ユーザの任意のタイミングでプリンタドライバ３６０を更新できる。そのため、実施形態１の印刷システム１に比して、実施形態２に従う印刷システム１４００は、プリンタドライバ３６０の更新に関し、よりユーザの利便性を向上し得る。
【０１１３】
［実施形態３］
実施形態２に従う印刷システム１４００では、プリンタドライバ構成ファイルおよびＵＩ用ファイル４４０の実体ファイルが、複数の情報処理端末１４１０のそれぞれに格納される構成であった。そのため、複数の情報処理端末１４１０の各々のユーザが、プリンタドライバ３６０を更新する必要があった。実施形態３に従う印刷システムにおいては、当該印刷システムに含まれる複数の情報処理端末のうち、１の情報処理端末がプリンタドライバ３６０の更新処理を行なった場合、他の情報処理端末でもプリンタドライバ３６０の更新処理が実行される。
【０１１４】
図１８は、実施形態３に従う印刷システム１８００の構成例について説明する図である。なお、図１４に示される部分のうち、図１４と同一符号を付している部分については上記と同じであるため、その部分についての説明は繰り返さない。
【０１１５】
印刷システム１８００は、情報処理端末１８１０と、サーバ１８２０と、画像形成装置１００とによって構成される。印刷システム１８００は、情報処理端末１８１０ではなくサーバ１８２０が第３記憶部１４４６および第４記憶部１４４８を有する点において、印刷システム１４００と相違する。これら第３記憶部１４４６および第４記憶部１４４８は、サーバ１８２０のユーザ領域に配置される。
【０１１６】
上記構成によれば、複数の情報処理端末１８１０（１８１０Ａ，１８１０Ｂ，・・・）は、サーバ１８２０に格納されるプリンタドライバ構成ファイルおよびＵＩ用ファイル４４０を共有して使用する。
【０１１７】
また、複数の情報処理端末１８１０のうち、１台の情報処理端末１８１０が図１６に示されるプリンタドライバの更新処理を行なうことにより、上記のファイル（すなわち、プリンタドライバ）が更新される。
【０１１８】
上記によれば、印刷システム１８００は、当該システムを使用する複数のユーザにおける、プリンタドライバの更新処理に要する負担を低減し得る。
【０１１９】
以上の次第で、ある実施の形態に従うと、開示された技術的特徴は、例えば、以下のように要約され得る。
【０１２０】
［構成］
（構成１）
情報処理端末２００が、当該端末にインストールされた、当該端末と通信可能な画像形成装置１００の各機能を動作させるためのドライバ（例えば、プリンタドライバ）を更新するための方法が提供される。この方法は、ドライバを更新するための更新用のプリンタドライバ構成ファイルを取得するステップ（Ｓ１２５０）と、更新用のプリンタドライバ構成ファイルに基づいて、画像形成装置１００の機能に関するユーザインターフェイスのための更新用のＵＩ用ファイルを生成するステップ（Ｓ１１４０）と、インストール時にＯＳ３４０によって生成されたレジストリ３４４を参照するステップ（Ｓ１２６０）と、レジストリ３４４の参照結果と、更新用のドライバ構成ファイル（例えば、プリンタドライバ構成ファイル）とに基づいて、インストール時に用いられたドライバ構成ファイルを更新するステップ（Ｓ１２７０）と、レジストリ３４４の参照結果と、更新用のＵＩ用ファイルとに基づいて、インストール時に用いられたドライバ構成ファイルからＯＳ３４０によって生成されたＵＩ用ファイル４４０を更新するステップ（Ｓ１２８０）とを備える。
【０１２１】
（構成２）
（構成１）に従う更新方法を、管理者権限により実行するタイミングを規定するステップ（Ｓ１１７０）をさらに備える。
【０１２２】
（構成３）
（構成２）において、タイミングは、情報処理端末にインストールされたＯＳ３４０へのログイン時を含む。
【０１２３】
（構成４）
情報処理端末（１４１０，１８１０）が、当該端末にインストールされた、当該端末と通信可能な画像形成装置１００の各機能を動作させるためのドライバ（例えば、プリンタドライバ）を更新するための方法が提供される。この方法は、インストールにより管理者権限を必要とする第１記憶部３４６に格納された第１のドライバ構成ファイルを管理者権限を必要としない第３記憶部１４４６に移動するステップ（Ｓ１５３０）と、インストールにより管理者権限を必要とする第２記憶部に格納されたＵＩ用ファイル４４０を管理者権限を必要としない第４記憶部１４４８に移動するステップ（Ｓ１５４０）と、第１記憶部３４６に、第３記憶部１４４６に格納されるドライバ構成ファイルを指し示す第１のリンク（シンボリックリンク）を生成するステップ（Ｓ１５５０）と、第２記憶部３４８に、第４記憶部１４４８に格納されるＵＩ用ファイル４４０を指し示す第２のリンクを生成するステップ（Ｓ１５６０）と、ドライバを更新するための更新用のドライバ構成ファイルを取得するステップ（Ｓ１２５０）と、第２のドライバ構成ファイルに基づいて、画像形成装置の各機能に関するユーザインターフェイスのための更新用のＵＩ用ファイルを生成するステップ（Ｓ１１４０）と、第３記憶部１４４６に格納されたドライバ構成ファイルを、更新用のドライバ構成ファイルに基づいて更新するステップ（Ｓ１６３０）と、第４記憶部１４４８に格納されたＵＩ用ファイル４４０を、更新用のＵＩ用ファイルに基づいて更新するステップ（Ｓ１６４０）とを備える。
【０１２４】
（構成５）
（構成４）において、更新用のＵＩ用ファイルに基づいて更新された第４記憶部１４４８に格納されるＵＩ用ファイル４４０を、第２のリンクに基づいて特定するステップ（Ｓ１７１０）と、特定された更新後のＵＩ用ファイル４４０に基づいて、画像形成装置１００の機能に関するユーザインターフェイスを生成するステップ（Ｓ１３７０）とをさらに備える。
【０１２５】
（構成６）
（構成５）において、第３記憶部１４４６および第４記憶部１４４８は、情報処理端末が通信可能なサーバ１８２０に配置される。
【０１２６】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【０１２７】
１，１４００，１８００  印刷システム、２１  ＲＯＭ、２３  メモリ、２４  表示装置、２５  入力装置、２６  ネットワークコントローラ、１００  画像形成装置、２００，２００Ａ，２００Ｂ，１４１０，１８１０  情報処理端末、３００，１８２０  サーバ、３１０，４０５  プリンタドライバ構成ファイル、３２０，１４２０  ドライバ更新アプリケーション、３２２  ドライバファイル取得部、３２４  レジストリ参照部、３２６  ファイルパス生成部、３２８  ドライバファイル書込み部、３３０  インストーラ、３４２  スケジューラ、３４４  レジストリ、３４６  第１記憶部、３４８  第２記憶部、３５０  ドライバ能力表示部、３６０  プリンタドライバ、３７０  印刷アプリケーション、４１０  ファイルシステム、４２０  管理者領域、４３０  ドライバ能力定義ファイル、４４０  ＵＩ用ファイル、５００，７００，９００  ユーザインターフェイス画面、５１０，７１０  設定、１０１０  プロセスシステム、１０２０  管理者プロセス、１０３０  ユーザプロセス、１０４０  ユーザ領域、１４４６  第３記憶部、１４４８  第４記憶部。
【図１】
2018085027.tif 000003
【図２】
2018085027.tif 000004
【図３】
2018085027.tif 000005
【図４】
2018085027.tif 000006
【図５】
2018085027.tif 000007
【図６】
2018085027.tif 000008
【図７】
2018085027.tif 000009
【図８】
2018085027.tif 000010
【図９】
2018085027.tif 000011
【図１０】
2018085027.tif 000012
【図１１】
2018085027.tif 000013
【図１２】
2018085027.tif 000014
【図１３】
2018085027.tif 000015
【図１４】
2018085027.tif 000016
【図１５】
2018085027.tif 000017
【図１６】
2018085027.tif 000018
【図１７】
2018085027.tif 000019
【図１８】
2018085027.tif 000020