JP2008203929A - サーバ装置、クライアント装置、ドライバ処理方法、記憶媒体、プログラム - Google Patents
サーバ装置、クライアント装置、ドライバ処理方法、記憶媒体、プログラム Download PDFInfo
- Publication number
- JP2008203929A JP2008203929A JP2007036113A JP2007036113A JP2008203929A JP 2008203929 A JP2008203929 A JP 2008203929A JP 2007036113 A JP2007036113 A JP 2007036113A JP 2007036113 A JP2007036113 A JP 2007036113A JP 2008203929 A JP2008203929 A JP 2008203929A
- Authority
- JP
- Japan
- Prior art keywords
- driver
- client
- task
- agent
- server
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1204—Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1224—Client or server resources management
- G06F3/1225—Software update, e.g. print driver, modules, plug-ins, fonts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
- G06F3/1288—Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】 各クライアント装置がいずれかのデバイスを使用可能とするデバイスドライバをインストールする作業負担を軽減することである。
【解決手段】 サーバはデバイスに対してインストール可能なデバイスドライバを関連づけて第1情報管理DB部に記憶しておく。そして、第1情報管理DB部に記憶されたいずれかのデバイスドライバに対して異なるタスクを生成する生成する((S47,S48)。そして、生成した異なるタスクを実行するスケジュールを作成する。さらに、作成されたスケジュールに基づいて、生成された異なるタスクを実行する(S49、S50)構成を特徴とする。
【選択図】 図4
【解決手段】 サーバはデバイスに対してインストール可能なデバイスドライバを関連づけて第1情報管理DB部に記憶しておく。そして、第1情報管理DB部に記憶されたいずれかのデバイスドライバに対して異なるタスクを生成する生成する((S47,S48)。そして、生成した異なるタスクを実行するスケジュールを作成する。さらに、作成されたスケジュールに基づいて、生成された異なるタスクを実行する(S49、S50)構成を特徴とする。
【選択図】 図4
Description
本発明は、ネットワークを介して複数のクライアント装置と、デバイスとを接続したネットワークにおいて、サーバ装置がいずれかのクライアント装置にデバイスドライバをインストールする処理に関するものである。
従来、企業のネットワーク化に伴い、コンピュータや複合画像形成装置(MFP)の台数が増加している。そして、これらの台数が増加するに伴い、それらを効率的に管理することでTCO削減するためのドキュメントソリューションビジネスが多くのアプリケーションを使って行われている。
その中で、コンピュータ(PC)にインストールされている、いわゆるアプリケーションが生成したデータを印刷するためのプリンタドライバを管理したいという要求がある。
このような要求に対して、サーバからクライアントへ推奨されるドライバを容易にインストールする、いわゆるPushインストールする仕組みとしては、複数の仕組みがある。
第1の仕組みとしては、クライアントに対して、あるデバイスに対応したドライバをサーバ側からインストールする場合には、ターゲットとなるデバイスと対応するドライバを指定してのドライバのインストールというものがある。
また、第2の仕組みとしては、ドライバプロファイル(モデル番号、OSバージョン、言語等)とリソースプロファイル(利用可能なドライバ情報)とから、ドライバプライオリティリストを生成する。そして、生成されたドライバプライオリティリストに従い、適切なドライバセットを取得して、ドライバをインストールするというものがある。
さらに、第3の仕組みとしては、ネットワーク上において、ネットワークに接続するネットワークデバイスを探索するための範囲を指定し、その指定された範囲内において、ネットワークデバイスを探索する。そして、その探索された範囲内のネットワークデバイスを管理するクライアントに対し、一括して制御プログラムを配信するというものがある。
特開 2004-171513号公報
しかしながら、上述した従来の技術では、以下の問題があった。
第1の仕組みでは、ターゲットデバイスに対して、対応するドライバを1対1で選択する方式では、ターゲットドライバが複数のPDLをサポートしている場合やクライアントによりインストールするドライバが異なる場合は多大な管理工数が必要となってしまう。同様に、クライアントの言語やOSが多岐に渡る場合には、多大な管理工数が必要となってしまう。
また、第2の仕組みでは、プライオリティリストに従ったドライバ選択となるために、任意のドライバを任意のクライアントにインストールすることができない。
さらに、第3の仕組みでは、クライアントおよびデバイスをある範囲指定内にて制御する場合には、IPアドレスといった限定的な範囲内にその使用が制限される。
このように、上記第1〜第3の仕組みでは、ドライバインストール処理において、ユーザビリティ面、更にはそれに伴うIT管理コストの増大、業務の非効率化によるTCOの増大という問題があった。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、各クライアント装置がいずれかのデバイスを使用可能とするデバイスドライバをインストールする作業負担を軽減できる仕組みを提供することである。
また、各クライアント装置にインストールしたデバイスドライバの更新、削除処理を効率よく管理して、各デバイスに適応する各デバイスドライバに対するドライバ管理負担を軽減できる仕組みを提供することである。
上記目的を達成する本発明のサーバ装置は以下に示す構成を備える。
複数のクライアント装置がネットワーク上に接続される複数のデバイスのいずれかを使用可能とするためのデバイスドライバを管理するサーバ装置であって、各デバイスに対してインストール可能なデバイスドライバを関連づけて記憶する記憶手段と、前記記憶手段に記憶されたいずれかのデバイスドライバに対して異なるタスクを生成する生成手段と、前記生成手段が生成した異なるタスクを実行するスケジュールを作成する作成手段と、前記作成手段により作成されたスケジュールに基づいて、前記生成手段が生成した異なるタスクを実行する実行手段とを有することを特徴とする。
上記目的を達成する本発明のクライアント装置は以下に示す構成を備える。
ネットワーク上に接続される複数のデバイスのいずれかを使用可能とするためのデバイスドライバを管理するサーバ装置と通信可能なクライアント装置であって、前記サーバ装置が実行するタスクでインストールされるエージェントを備え、前記エージェントは、デバイスドライバをインストールすべきタスクが登録されているかどうかを問い合わせる問い合わせ手段と、前記問い合わせ手段による問い合わせに応じて前記サーバ装置から取得するデバイスドライバをインストールするインストール手段とを有することを特徴とする。
本発明によれば、各クライアント装置がネットワーク上のいずれかのデバイスを使用可能とするデバイスドライバをインストールする作業負担を軽減して、各クライアント装置に対するデバイスドライバ管理処理を効率化できる。
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
図1は、本発明の第1実施形態を示す情報処理装置、サーバ装置、画像形成装置を含むネットワークシステムの構成を説明する図である。本例は、サーバ、クライアントコンピュータ(クライアント)、画像形成装置(デバイス)がネットワークを介して通信可能なネットワークシステム例である。
〔第1実施形態〕
図1は、本発明の第1実施形態を示す情報処理装置、サーバ装置、画像形成装置を含むネットワークシステムの構成を説明する図である。本例は、サーバ、クライアントコンピュータ(クライアント)、画像形成装置(デバイス)がネットワークを介して通信可能なネットワークシステム例である。
図1において、3000は通信回線で、例えばイーサネット(登録商標)のネットワークケーブルで構成される。そして、この通信回線3000には、サーバコンピュータ(サーバ)1000とクライアント2100、2200、2300、2400、2500がネットワークコントローラを介して接続されている。
更に、通信回線3000に各クライアントから印刷可能なデバイス4000、4100、4200が接続されている。なお、デバイス4000、4100、4200は、単機能なプリンタデバイスである場合と、複合機能を実行する複合画像形成装置(MFP)である場合とが含まれる。
なお、クライアント2100、2200、2300、2400、2500やサーバ1000には、各デバイスに印刷ジョブを送信するためのプリンタドライバがインストールされる。また、プリンタドライバは、クライアント2100、2200、2300、2400、2500やサーバ1000が備える記憶装置にインストールされ、オペレーティングシステム(OS)の管理の下で、CPUによりRAM上にロードされる。なお、プリンタドライバに加えて、ネットワークを介してファクシミリ送信等を実行するためのファクシミリドライバもデバイスドライバに含まれる。
また、プリンタドライバは、OSのバージョン等によって、それぞれ対応するプリンタドライバがベンダーから提供され、機能拡張等に伴いバージョンが変更される場合がある。なお、デバイスドライバとは、デバイスのメーカーが提供する制御プログラムであって、この制御プログラムをクライントにインストールすることで、対応するデバイスを使用可能な状態となる。また、デバイスドライバは、固有のユーザインタフェースを備え、ユーザにデバイスに対する設定や、デバイスの状態を表示する機能を備える。
このように構成されたネットワークシステムにおいて、クライアントのうち、クライアント2100は、管理者がサーバ1000にアクセスするために使用するものとする。
一方、クライアント2200、2300、2400、2500には、サーバ1000からエージェントがインストールされる。さらに、サーバ1000から通信回線3000を経由して利用可能な周辺装置(デバイス)4000、4100、4200から印刷を行うためにプリンタドライバがインストールされる。
〔印刷システムの構成〕
図2は、図1に示したサーバ1000とクライアント2100、2200,2300、2400、2500とのハードウエアの構成を説明するブロック図である。
図2は、図1に示したサーバ1000とクライアント2100、2200,2300、2400、2500とのハードウエアの構成を説明するブロック図である。
なお、図中では、クライアントについては、クライアント2100を代表して説明する。本例は、通信回線3000を介してサーバ1000、クライアントコンピュータ2100が接続される例である。
また、クライアント2100は、サーバ1000に対するドライバ処理を行う管理者が使用する場合を想定してドライバインストール処理について説明する。つまり、クライアント2100以外のクライアント2200,2300、2400、2500がドライバインストール対象のクライアントとして機能する。
図2に示すサーバ1000において、1080は第1中央演算処理装置で、CPUで構成され、第1記憶部1060に記憶されるOS,制御プログラム、アプリケーションをRAM等にロードして実行する。1060は第1記憶部で、ハードディスク等の外部記憶装置で構成される。
なお、第1記憶部1060は、第1記憶媒体読み取り装置1050を介して、プログラムおよび関連データが記憶されている。ここで、第1記憶媒体読み取り装置1050で読み取り可能なメディアとは、フレキシブルディスク(FD)、CD−ROM、ICメモリカード等が含まれ、該メディアには、プログラムおよび関連データが記憶されている。
1070は第1データ制御部で、システムプログラム、アプリケーションプログラムを例えばRAMにロードして実行する第1ドライバ制御部1071と、第1情報管理データベース部(第1情報管理DB部)1072とを備える。第1情報管理DB部1072は、通信回線3000を介して接続されるデバイス4000、4100、4200等に関するデバイスドライバを管理している。第1ドライバ制御部1071は、クライアント2200,2300、2400、2500に対するデバイスドライバのインストール処理を図4に示す制御手順に基づいて実行する。
第1データ制御部1070は、第1入力部1020から入力される情報を処理して、第1インタフェース制御部1040を経由してサーバ1000に接続されているプリンタなどの周辺装置に出力する。
なお、本実施形態では、第1表示部1010は、CRTディスプレイ、液晶ディスプレイなどの表示装置とし、第1入力部1020はキーボードやマウスなどのポインティングデバイス等で構成されているものとする。1090はシステムバスで、上述した各部と第1中央演算処理装置1080とを接続している。1030は第1入出力データ制御部で、第1入力部1020からの入力を処理して、第1表示部1010に表示する制御を行う。また、第2入出力データ制御部1030は、第2記憶媒体読み取り装置1050から読み出されるデータ、プログラムを第2記憶部2060に書き込むとともに、第2記憶部2060に記憶されたデータ、プログラムを読み出す処理を行う。
更に、第1記憶部1060、第2記憶部2060は、ハードディスク、光磁気ディスクで構成されるものであってもいいし、これらの組み合わせで構成されるものであってもよい。
なお、通信回線3000は、通常のLANもしくはIEEE1394やUSBといった双方向シリアルインタフェース等である。
図2に示すクライアント2100において、2080は第2中央演算処理装置で、CPUで構成される。2060は第2記憶部で、ハードディスク等の外部記憶装置で構成される。
なお、第2記憶部2060は、第2記憶媒体読み取り装置2050を介して、プログラムおよび関連データが記憶されている。ここで、第2記憶媒体読み取り装置2050で読み取り可能なメディアとは、フレキシブルディスク(FD)、CD−ROM、ICメモリカード等が含まれ、該メディアには、プログラムおよび関連データが記憶されている。
2030は第2入出力データ制御部で、第2入力部2020からの入力を処理して、第2表示部2010に表示する制御を行う。また、第2入出力データ制御部2030は、第2記憶媒体読み取り装置2050から読み出されるデータ、プログラムを第2記憶部2060に書き込むとともに、第2記憶部2060に記憶されたデータ、プログラムを読み出す処理を行う。
2070は第2データ制御部で、システムプログラム、アプリケーションプログラムを例えばRAMにロードして実行する第2ドライバ制御部2071を備える。
第2データ制御部2070は、第2入力部2020から入力される情報を処理して、第2インタフェース制御部2040を経由してクライアント2100に接続されているプリンタなどの周辺装置に出力する。2090はシステムバスで、上述した各部と第2中央演算処理装置2080とを接続している。
なお、本実施形態では、第2表示部2010は、CRTディスプレイ、液晶ディスプレイなどの表示装置とし、第2入力部2020はキーボードやマウスなどのポインティングデバイス等で構成されているものとする。
更に、第2記憶部2060は、ハードディスク、光磁気ディスクで構成されるものであってもいいし、これらの組み合わせで構成されるものであってもよい。
なお、通信回線3000は、通常のLANもしくはIEEE1394やUSBといった双方向シリアルインタフェース等である。
図3は、図1に示したネットワークシステムにおけるドライバインストールのワークフローを説明する概念図である。本例は、クライアント2100の指示に基づいてサーバ1000からプリンタドライバをクライアント2200等にインストールするまでの一連のワークフローに対応する。なお、5001〜5009は処理を示す。
まず、ドライバ管理処理として、図2に示されるようなサーバ&クライアント環境において、処理5002で、インストールすべきドライバをサーバ1000が管理するレポジトリに設定する。そして、処理5003で、デバイスを利用するためのドライバを登録する。
一方、処理5005で、処理5004で実行されるサーバ1000からのクライアント探索結果に従い、ドライバをインストールするクライアントに対して、グルーピング処理やサーバ1000とやり取りする。このため、図1に示したクライアント2000内の第2ドライバ制御部2071に該当するエージェント(Agent)の配布を行う。
次に、処理5006で、処理5001で実行される通信回線3000に接続されているサーバ100からのデバイス探索結果と、処理5003で、先に登録されたドライバとの関連付けを行う。
次に、処理5007で、サーバ1000でデバイスとドライバの関連付け情報とAgentが配布されたクライアントとからタスクを生成し、処理5008で、それらのスケジューリング設定を行う。
そして、最後に、処理5009で、ドライバは設定されたスケジューリングに従い、サーバ1000からクライアントにインストールして、ドライバインストール処理を完了する、これが一連のドライバインストール処理である。
なお、タスクには、AgentをクライアントにインストールするAgentインストールタスクと、デバイスドライバであるプリンタドライバをクライアントにインストールするデバイスドライバインストールタスクとがある。
図4は、本実施形態を示すサーバ装置における第1のデータ処理手順の一例を示すフローチャートである。本例は、管理者用PCであるクライアント2100がサーバ1000にアクセスしてドライバをインストールする処理例である。ここで、ドライバは、プリンタを想定してプリンタドライバの例を説明する。具体的に本処理は、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、Webアプリケーションを介して、サーバ1000の第1ドライバ制御部1071にアクセスする。そして、、サーバ100の第1ドライバ制御部1071が実行する処理である。
なお、S41〜S51は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
本実施形態では、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、サーバ1000の第1ドライバ制御部1071にアクセスする。
ここで、本実施形態では、第1ドライバ制御部1071にアクセスするとは、Webアプリケーションにアクセスすることを意味するものとする。
他方、サーバ1000の第1表示部1010、第1入力部1020より、アクセスすることも可能である。
さらには、Webアプリケーションではなく、第1ドライバ制御部1071が、クライアント2200、2300、2400、2500の第2ドライバ制御部2071と通信処理を行うことが可能な場合がある。この場合には、通常のNativeアプリケーションであることも可能である。
最初に、S41で、先の第2表示部2010、第2入力部2020から入力処理に基づく要求の内容をサーバ1000の第1ドライバ制御部1071が判断する。ここで、判断する要求は、ドライバ管理要求(41−1)か、タスク生成要求(41−2)か、ドライバやAgentのインストレーション要求(41−3)のいずれかである。なお、これらの要求のいずれにも該当しないと判断した場合は、本処理を終了する。
ここで、第1ドライバ制御部1071がAgentのインストレーション要求(41−3)であると判断した場合は、S46,S48あるいは本処理を終了する。
ここで、第1ドライバ制御部1071がドライバ管理要求41−1であると判断した場合は、そのドライバ管理要求が、ドライバ管理処理42−1か、クライアント管理処理42−2、関連付け処理42−3のいずれであるかを判断する。
ここで、クライアント2100からの要求がドライバ管理処理42−1であると判断した場合は、S43で、詳細は後述するドライバセットの登録や削除処理意味するドライバ管理処理を行って、S41へ戻る。
一方、S42で、第1ドライバ制御部1071がクライアント2100からの要求がクライアント管理処理42−2であると判断した場合は、S44へ進む。そして、S44で、第1ドライバ制御部1071が詳細は後述するAgentがインストールされているクライアントのグルーピングや削除を意味するクライアント管理処理を行い、S41へ戻る。
一方、S42で、第1ドライバ制御部1071がデバイスとドライバとの関連付け処理42−3であると判断した場合には、S45で、詳細は後述するドライバとデバイスの関連付け処理を行い、S41へ戻る。
一方、S41で、第1ドライバ制御部1071がタスク生成要求41−2であると判断した場合は、S46へ進む。そして、S46で、第1ドライバ制御部1071はタスク生成要求がAgentタスク処理46−1、ドライバタスク処理46−2のいずれであるかを判断する。
ここで、Agentタスク処理46−1とは、クライアントへのAgentインストールタスクを生成し、スケジューリングすることを意味する。
また、ドライバタスク処理46−2とは、グルーピングされたクライアント情報と関連付け情報とからドライバインストレーションタスクを生成し、スケジューリングすることを意味する。
ここで、第1ドライバ制御部1071はタスク生成要求がAgentタスク処理46−1であると判断した場合は、S47で、詳細は後述するAgentタスク処理を行い、S41へ戻る。ここで、Agentインストールタスクとは、サーバ1000からの要求応じて、タスクを実行するエージェントとして機能するエージェント手段をクライアントにインストールするタスク(エージェントインストールタスク)である。
一方、S46で、第1ドライバ制御部1071はタスク生成要求がドライバタスク処理S46−2であると判断した場合は、S51で、詳細は後述するドライバタスク処理を行い、S41へ戻る。
一方、S41で、第1ドライバ制御部1071がクライアント2100からの要求がインストレーション要求41−3であると判断した場合は、S48へ進む。
そして、S48で、第1ドライバ制御部1071がその要求種別がAgentのインストレーション処理48−1であるのか、ドライバインストール処理48−2のいずれであるのかを判断する。
ここで、Agentのインストレーション処理48−1とは、ドライバやAgentのインストール要求を意味する。また、ドライバインストール処理48−2とは、サーバ1000よりクライアントに選択されたドライバを第1記憶部1060から読み出して転送してインストールするドライバインストール処理を意味する。
ここで、第1ドライバ制御部1071がAgentのインストール処理48−1であると判断した場合は、S49で、詳細は後述するクライアントに対してAgentインストール処理を行い、S41へ戻る。ここで、クライアントとは、通信回線3000に接続されるクライアント2100、2200、2300、2400、2500等である。
一方、S48で、第1ドライバ制御部1071がドライバインストール処理48−2であると判断した場合は、S50へ進む。そして、S50で、詳細は後述するクライアントに対して作成されたタスクをスケジューラが設定されたスケジュールに基づいて実行することでドライバインストレーション処理を行い、S41へ戻る。以下、図4に示した各ステップの処理についてユーザインタフェース、フローチャートを参照して詳述する。
なお、本実施形態においては、ネットワークの通信機能に基づいて、予め、Broadcastやファイル読み込みといった方法により、デバイスおよびクライアントは探索されている、もしくは探索可能であることを前提とする。
図5は、本実施形態を示すサーバ1000で予定しているドライバインストール情報一覧の一例を示す図である。本画面は、サーバ1000からWebアプリケーションを介してクライアント2100が取得することで、クライアント2100の第2表示部2010でも表示可能である。
図5に示す通り、ターゲットとなるクライアントは、[Client Name]カラムC1に示す<ClientPC_01>、<ClientPC_02>、<ClientPC_03>、<ClientPC_04>である。
各クライアントの設置場所は、[Area]カラムC2に示す通り、<1F−area11>である。
また、搭載されているオペレーティングシステム(以下、OS)は、[OS]カラムC3に示すWindows(登録商標)でいうところの、Windows(登録商標)で2000系、Windows(登録商標)で9x系である。
図5においては、Windows(登録商標)2000系は、<W2K>と表記し、Windows(登録商標)で9x系は、<W9x>と表記する。
もちろん、OSとして、Linux(商品名)やMac(商品名)といったOSである場合には、それぞれを意味する対応値が設定されることになることは言うまでもない。
また、これらの分類は、そのOSが持つプリントサブシステムに依存しており、ドライバの観点からは、別々のドライバが存在することを意味する。
例えば、Windows(登録商標)で系であるならば、Windows(登録商標)で95/98/Me等に適合したドライバ、Windows(登録商標)NT4等に適合したドライバ、Windows(登録商標)で2000/XP/2003等に適合したドライバに大別される。
なお、OSが異なれば、同一のデバイスに対してそれぞれ異なるドライバが必要となる場合があることは言うまでもない。
次に、[Language]カラムC4は、そのOSの仕向けを示すカラムであり、図5においては、<US>は、English仕向けのOS、<JP>は、Japanese仕向けのOSが搭載されていることを意味する。
なお、仕向けによっても対応するドライバセットは異なる場合があることは言うまでもない。
また、[Network]カラムC5に各クライアントが存在する種別であることを示す一例として、ドメイン環境とワークグループ環境が示され、それぞれの名称は、[Network Name]カラムC6に示している。
このようなクライアントに対して、本実施形態では、図5に示す[Device Name]カラムC7に示す2種類のデバイスである<Device−A>(2台)、<Device−B>(1台)の合計3機種に適合するドライバをインストールすることを意味する。
ここで、[Device Name]は、デバイスが持つMIB(Management Information Base)情報等により大別されることを意味する。
また、<Device−A>のように、[Device Name]が同じでも、設置場所が異なる場合がある。このため、[Device Name]が同じでも、IPアドレスの相違、搭載されているPDL、デバイスが持つ仕向け、またオプションにより、クライアントからは別々のデバイスであると認識される。
図5においては、IPアドレスを、[IP Address]カラムC8に、デバイスが持つ仕向けを[Language]カラムC9に、搭載されているPDLを[PDL]カラムC10に、デバイスが持つオプションを[misc]カラムC11に示す。
[Language]カラムC4における<US>とはEnglish仕向けのデバイスであることを意味し、<JP>とはJapanese仕向けのデバイスであることを意味する。
また、[PDL]カラムC10に示される<PS>は、ページ記述言語がAdobe社により開発したPostScriptを意味する。<PCL5e>とは、Hewletto-Packard社が開発したパソコン用のページプリンタを制御するためのページ記述言語であることを意味する。
さらに、[misc]カラムC11の<FAX>は、クライアントからデバイス経由でファクス送信をすることができることを意味する。つまり、そのデバイスには、FAX機能を実行するファクスドライバをクライアントにインストールすることにより、クライアントからデバイス経由でファクス送信をすることができることを意味する。
これらのことは、図5の[Device Name]、[Language]、[PDL]、[misc]の各カラムに示すデバイス特性が、それぞれ異なるドライバとなる場合があることを示す。
一方、[Driver Name]カラムC12に記載されたドライバは、デバイスに対応し、かつクライアントにインストールして効果を要するドライバの一例である。
本例は、デバイス<Device−B>に対しては、クライアント<ClientPC_01>に、ドライバ<PCL Driver−A>のUS仕向けのW2K用バージョン5.00をインストールする。
さらに、デバイス<Device−B>に対しては、ドライバ<FAX Driver−A>のUS仕向けのW2K用バージョン3.00をインストールすることを目的とすることを意味する。
すなわち、本実施形態においては、各クライアントに対して、どのデバイスを、かつどのようなドライバをインストールするかを図5に示す<Use>、<No Use>で設定可能な状態を示している。ここで、Useは、所定のドライバをそのクライアントにインストールする設定であることを意味し、No Useは、インストールしない設定であることを意味する。
図6は、図2に示した第2表示部2010に表示されるドライバデータベースの一覧表示画面の一例を示す図である。本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
本画面は、2ペイン(pane)で構成され、第2入力部2020の操作に基づいて、第2中央演算処理装置2080の制御に基づいて、第2表示部2010に表示される。以下、各カラムとボタンについて説明する。
図6において、左ペインの[Driver Database]ツリービューTVは、第1情報管理DB部1072に登録されているドライバセットをツリー形式で表示する。右ペインには、[Driver Set]が設定されている。[Driver Database]ツリービューTVにて、任意ツリーを選択したときに、そこに属するドライバセットを表示する。
[Select]カラムC21は、ドライバセットの選択の有無を意味するカラムである。[PDL]カラムC22は、ドライバセットのPDLを示すカラムである。
[Version]カラムC23は、ドライバセットのバージョンを示すカラムである。[OS]カラムC24は、ライバセットが対応しているOSを示すカラムである。[Language]カラムC25は、ドライバセットが対応している仕向けを示すカラムである。
[Add]ボタンBT1は、ドライバセットの追加処理のためのUIに移行するコントロールボタンである。[Delete]ボタンBT2は、[Select]ボタンBT1により選択されたドライバセットを削除するコントロールボタンである。
[Cancel]ボタンBT3は、画面での処理を無効にし、所定のUIへ移動するためのコントロールボタンである。
ここで、ドライバセットを判別するために、PDL、Version、OS、Language以外のデータを用いることも可能であることは言うまでもない。
次に、ドライバ管理処理−ドライバセットの登録・削除処理について詳述する。
〔ドライバ管理処理−ドライバセットの登録・削除処理〕
図7は、本実施形態を示すサーバ装置における第2のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS43のドライバ管理処理の詳細手順に対応する。なお、S71〜S80は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
図7は、本実施形態を示すサーバ装置における第2のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS43のドライバ管理処理の詳細手順に対応する。なお、S71〜S80は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
まず、S71で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、データベースに登録されている、例えば図6に示すドライバデータベースの一覧表示画面を第2表示部2010に表示する。
次に、S72で、第1ドライバ制御部1071は、管理者が第1入力部1020を操作して入力した操作指示がドライバセット登録処理72−1か、ドライバセットの削除処理72−2か、それ以外であるかを判断する。
ここで、第1ドライバ制御部1071がドライバセット登録処理72−1であると判断した場合は、本例では、図6における[Add]ボタンBT1がドライバセット登録処理に該当する。
この操作により、S73で、第2表示部2010に、例えば図8に示すドライバセット登録画面を第1中央演算処理装置1080で表示する。
図8は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、ドライバセット登録画面例である。本画面は、サーバ1000からWebアプリケーションを介してクライアント2100が取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
次に、S74で、図8に示す画面の[Driver Set:]のエディットボックスEBOXに、登録するドライバセット名を第2入力部2020から直接入力して指定する。
なお、この際、図8に示す[Browse]ボタンBT81を押下することにより、一般的なコモンダイアログ等を第2表示部2010に表示して登録するドライバセットを指定してもよい。なお、BT83はキャンセルボタンである。
次に、S75で、第1ドライバ制御部1071が指定したドライバセットがデバイスとドライバの対応情報とを持っているか否かを判断する。ここで、第1ドライバ制御部1071によりドライバセットがデバイスとドライバの対応情報を持っていると判断した場合は、S76へ進む。
一方、第1ドライバ制御部1071によりドライバセットがデバイスとドライバの対応情報を持っていないと判断した場合は、S78へ進む。
以下、図9を参照して、上記ドライバの対応情報について説明する。
図9は、本実施形態を示すサーバ装置に登録するドライバセットの一例を示す図である。本例は、デバイスとデバイスドライバとの対応情報例である。本例のデバイスとドライバの対応情報とは、デバイス名91と、ドライバ名92から構成されている例である。
本実施形態において、通常ドライバは、あるデバイスに対して、1:1もしくは1:多の関係にあり、あるデバイスに対して、使用することが可能なドライバが特定する必要がある。
しかしながら、その情報をドライバのインストレーションファイルであるINFファイルから特定できる場合とできない場合とがある。
ここで、INFファイルとは、Windows(登録商標)において、ソフトウエアのインストール用の設定が記述されたシステム定義ファイルである。
例えば、ドライバ名称に、そのデバイス名称が包含されているように特定することが比較的容易である場合には、本実施形態に示すようなデバイスとドライバの対応情報は不要である。しかしながら、ドライバ名称がデバイス名称を包含していない、もしくは、デバイス名称が異なる複数のデバイスに対して、同一のドライバの使用が可能な場合には、特定することが難しい。
そこで、本実施形態では、予め、図9に示すデータ構造でデバイスとドライバの対応情報をファイル等に記載する。
そして、上記対応情報をドライバセットといっしょに読み込むことにより、デバイスとドライバの対応付けを実現するものとする。
なお、対応表でなくとも、予め対応規則をルール化し、それをドライバ名称に反映したり、INFファイルに記述したり、もしくはある固定のドライバファイル名称にしたりすることも可能である。
本実施形態では、図9に示す通り、PSドライバに対しては、「File A」がデバイスとドライバの対応情報であり、デバイス名91がデバイスDevice−Aは、PSドライバセットとしてPS Device−A Driverが対応している。
同様に、デバイス名91がデバイスDevice−Bは、PSドライバセットとしてPS Device−B Driverが対応している。
続いて、S76で、指定されたドライバセットと図9に示したデバイスとドライバの対応情報を第1ドライバ制御部1071において処理することを意味するデバイスとドライバの対応情報を伴ったドライバセット抽出処理を行う。
次に、S77で、第1ドライバ制御部1071が抽出したデバイスとドライバの対応情報を伴ったドライバセットを第1情報管理DB1072に登録して、本処理を終了する。
本例では、図8に示した[Select]チェックボタンSCB1〜10をチェックしたドライバセットに関して、[Register]ボタンBT82を押下したときに、登録することを意味し、その結果の一例を図10に示す。
図10は、図2に示した第2表示部2010に表示される登録されたドライバデータベースの一覧表示画面の一例を示す図である。本画面は、2ペインで構成され、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
具体的には、本画面は、第2入力部2020の操作に基づいて、第2中央演算処理装置2080の制御に基づいて、第2表示部2010に表示される。なお、図6と同一のものには同一の符号を付してある。
本例では、例えば10セットのドライバセット(図8に示した[Select]チェックボタンSCB1〜10でチェックされたドライバセット数に対応する)が登録された状態を示す。
一方、S75で、第1ドライバ制御部1071がデバイスとドライバの対応情報を伴わないドライバセットであると判断した場合、S78で、デバイスとドライバの対応情報を伴わないドライバセット抽出処理を行う。
そして、S79で、同様の操作にて、デバイスとドライバの対応情報を伴わないドライバセットを第1情報管理DB1072に登録して、本処理を終了する。
これにより、予め対応規則をルール化し、それをドライバ名称に反映したり、INFファイルに記述したり、もしくはある固定のドライバファイル名称にしたりすることへの対応が可能となる。また、第1ドライバ制御部1071において予め認識できるようになっていることは言うまでもない。
なお、指定されたドライバのすべてもデバイスに対応付けすることなく処理することももちろん可能である。
一方、S72で、第1ドライバ制御部1071がドライバセット削除処理であると判断した場合、すなわち、図6、図8乃至図10において、任意のドライバがSelectされ、[Delete]ボタンBT2を押下した場合である。この場合は、S80で、第1ドライバ制御部1071が第1情報管理DB部1072から指定されたドライバセットを削除して、S71へ戻る。
なお、S71で、第1ドライバ制御部1071がドライバセットの登録処理、削除処理以外の処理であると判断した場合には、例えば、図6、図8、図10の[Cancel]ボタンBT3、BT83が押下したと判断した場合は、本処理を終了する。
〔クライアント登録処理−クライアントのグルーピング処理〕
図11は、本実施形態を示すサーバ装置における第3のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS44のクライアント登録処理の詳細手順に対応する。なお、S1101〜S1107は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
図11は、本実施形態を示すサーバ装置における第3のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS44のクライアント登録処理の詳細手順に対応する。なお、S1101〜S1107は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
さらに、本処理は、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、Webアプリケーションを介して、サーバ1000の第1ドライバ制御部1071にアクセスする。これにより、サーバ100の第1ドライバ制御部1071が実行する処理である。
まず、S1101で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、第1情報管理DB部1072に登録されている、例えば図12に示すクライアントグループ管理画面を第2表示部2010に表示する。
図12は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、クライアント登録画面例である。以下、本画面における各カラムとボタンについて説明する。本画面は、2ペインで構成され、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図12において、[Driver Database]ツリービューTVは、第1情報管理DB部1072に登録されているドライバをツリー形式で表示するコントロールである。
[Client Group Settings]は、右ペインに表示され、クライアントグループ作成および所属するクライアントの追加を行うコントロールが表示される。
[Client Group Name]エディットボックスEBOX1は、[Driver Database]ツリービューTVより選択したロケーションに、新たに追加するグループ名称を設定するボックスである。
[Client Group Path]エディットボックスEBOX2は、
[Driver Database]ツリービューTVより選択したロケーションを表示するボックスである。
[Driver Database]ツリービューTVより選択したロケーションを表示するボックスである。
[Next]ボタンBT11は次の処理ステップへの移行を指示する場合に押下するボタンである。[Cancel]ボタンBT12は本画面での処理を無効にし、所定のUIへの移動を指示する場合に押下するボタンである。
図12に示す通り、本例では、存在するグループ情報に関しては、<Client Database>ツリービューTVに表示され、右ペインには、<Client Group Settings>が表示される。
図12に示す例では、既存のグループ<1F>を親に持ち、その配下に、新たに、<area 11 − team A>を作成しようとしていることを意味する。ここで、前者を[Client Group Path]、後者を[Client Group Name]として表示している状態に対応する。
この状態下で、S1102で、第1ドライバ制御部1071が[Next]ボタンBT11を押下するか否かに基づいて、グループ作成であるか否かを判断する。ここで、第1ドライバ制御部1071がグループ作成を指示していないと判断した場合は、本処理を終了する。
一方、S1102で、第1ドライバ制御部1071がグループ作成を指示していると判断した場合、S1103へ進み、第1情報管理DB部1072をアクセスしてクライアントグループ設定処理を開始する。
なお、S1102で、第1ドライバ制御部1071がグループ作成を指示していないと判断した場合、例えば図12、図13に示すユーザインタフェース画面上で、[Cancel]ボタンBT3、BT12が押下された場合には、本処理を終了する。
次に、S1104で、第1ドライバ制御部1071が第1情報管理DB部1072をアクセスして、例えば図13に示すクライアントグループメンバー管理画面を第2表示部2010に表示する。
図13は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本画面は、2ペインで構成され、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
本例は、クライアントグループメンバー管理画面例であり、本画面では、作成するクライアントグループにグループメンバーや既存のクライアントグループを追加するか否かの処理を伴う機能を提供する。
以下、本画面における各カラムとボタンについて説明する。
図13において、[Client Database]ツリービューTVは、第1情報管理DB部1072に登録されているクライアントグループをツリー形式で表示する。
右ペインにおいて、[Client Group]M1には、既存のクライアントグループが、[Clients]M2には、既存のクライアントが表示される。また、表示されたクライアント、クライアントグループは、それぞれ[Select]ボタンSB1〜SB3、SB11〜SB14を押下することにより、選択することが可能に構成されている。
本例では、[Client Group Settings]M3には、新たなクライアントグループ<area 11 − team A>M31に対して、クライアント<ClientPC_01>を登録する状態に対応する。
つまり、[Selected Group]エディットボックスEBOX1に、「area 11 − team A」が設定されている例である。
[Group Path]エディットボックスEBOX2は、[Driver Database]ツリービューTVより選択したロケーション[¥1F¥]を表示するボックスである。
次に、S1105で、第1ドライバ制御部1071がグループメンバーや他のグループの追加を伴う処理か否かを判断する。ここで、グループメンバーや他のグループの追加を伴う処理であると判断した場合は、例えば図13に示すユーザインタフェース画面において、[Add]ボタンBT1が押下された場合は、S1106へ進む。
そして、S1106で、第1ドライバ制御部1071がグループメンバーや他のグループの追加処理を伴うクライアントグループの登録処理を、第1情報管理DB部1072に対して施して、本処理を終了する。
本例では、クライアントグループの追加処理とは、図13において、[Add]ボタンを押下する事を意味する。
一方、S1105で、グループメンバーや他のグループの追加を伴う処理でないと判断した場合、例えばクライアントグループのみの作成であると判断した場合は、S1107へ進む。そして、S1107で、第1ドライバ制御部1071がグループメンバーや他のグループの追加を伴わないグループ登録を第1情報管理DB部1072に対して施して、本処理を終了する。
〔タスク処理−Agentタスク作成&登録処理〕
図14は、本実施形態を示すサーバ装置における第4のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS47のAgentタスク処理の詳細手順に対応する。なお、S1401〜S1408は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。さらに、本処理は、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、Webアプリケーションを介して、サーバ1000の第1ドライバ制御部1071にアクセスする。これにより、サーバ100の第1ドライバ制御部1071が実行する処理である。
図14は、本実施形態を示すサーバ装置における第4のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS47のAgentタスク処理の詳細手順に対応する。なお、S1401〜S1408は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。さらに、本処理は、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、Webアプリケーションを介して、サーバ1000の第1ドライバ制御部1071にアクセスする。これにより、サーバ100の第1ドライバ制御部1071が実行する処理である。
まず、S1401で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、第1情報管理DB部1072に登録されているクライアント一覧を第2表示部2010に表示する。
図15は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、クライアント一覧画面例である。本画面は、1ペインで構成され、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図15において、[Select]カラムC151は、Agentの登録対象クライアントにするか否かの選択コントロールを設定するカラムである。
[Computer Name]カラムC152は物理的に存在する予めサーバ1000が探索したクライアント一覧を示すカラムである。
[OS]カラムC153はそのクライアントに搭載されているオペレーティングシステムを示すカラムである。[Network]カラムC154はそのクライアントがどのようなネットワーク環境に属しているかの情報を示すカラムであり、本例では、DomainもしくはWorkgroupを表記する。
[Domain/Workgroup]カラムC155は、[Network]カラムC154の属性に対する実際の名称を示すカラムである。本例では、Domainに対するドメイン名称、Workgroupに対するワークグループ名称を示している例である。
[ID]カラムC156は、Domain環境であるならば、DomainのID、Workgroupならば、そのクライアントのAdmin権限を持つIDを示すカラムである。[Password]カラムC157は、[ID]カラムC156に対するパスワードを示すカラムである。
[Status]カラムC158は、第1情報管理DB部1072にIDとPasswordが既に設定されているか否かを示すカラムである。
[Next]ボタンBT11は、次の処理ステップへの移行を意味するコントロールボタンである。[Cancel]ボタンBT12は、本画面での処理を無効にし、所定のUIへ移動するためのコントロールボタンである。
例えば、ClientPC_01は、そのOSとして、Windows(登録商標)2000系がインストールされており、domain01というドメイン環境におかれている。そして、そのドメインのIDがAllであり、かつPasswordは、第1情報管理DB1072に登録済みであるが、Agentはまだインストールされていない状態を表示している。
次に、S1402で、第1ドライバ制御部1071がクライアントへのAgentインストール処理の指定か否かを判断する。具体的には、上記のように登録済みクライアント情報より、何らかのクライアントが選択され、かつ[Next]ボタンBT11が押下されたか否かを判断する。
ここで、第1ドライバ制御部1071がクライアントへのAgentインストール処理の指定でないと判断した場合は、本処理を終了する。
一方、S1402で、第1ドライバ制御部1071がクライアントへのAgentインストール処理の指定であると判断した場合は、S1403で、図16に示すIDとPasswordの設定画面を表示する。
図16は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、IDとPasswordの設定画面例である。以下、2つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図16において、[Domain]セクションSC1は、ドメイン環境のIDとPasswordを設定するセクションである。[Domain]セクションC161は、ドメイン名称を示すセクションである。[ID]セクションC162は、そのドメインのIDを示すセクションである。
[Password]セクションSC163は、そのIDに対するPasswordを示すセクションである。
[Workgroup Members]セクションSC2は、Workgroup環境下にあるクライアントの一覧であり、各クライアントに対するAdmin権限を有するIDとPasswordを設定するセクションである。
[Workgroup Members]セクションSC2において、[Client Name]セクションSC164は、Workgroup環境下にあるクライアント名称を示すセクションである。[OS]セクションSC165は、そのクライアントのオペレーティングシステムを示すセクションである。
[Workgroup]セクションSC166は、そのクライアントが位置するWorkgroupの名称を示すセクションである。[ID]セクションSC167は、そのクライアントのAdmin権限のIDを示すセクションである。[Password]セクションSC168は、そのIDに対するPasswordを示すセクションである。
[Next]ボタンBT11は、次の登録画面への移行するためのコントロールボタンである。[Cancel]ボタンBT12は、本画面での処理を無効にし、所定のUIへ移動するためのコントロールボタンである。
ここで、図14に示す処理の説明に戻り、S1404で、第1ドライバ制御部1071がクライアントのネットワーク環境に応じたIDとPasswordを設定するか否かを判断する。ここで、第1ドライバ制御部1071がIDとPasswordを設定しないと判断した場合は、S1406へ進む。
一方、S1404で、第1ドライバ制御部1071がクライアントのネットワーク環境に応じたIDとPasswordを設定すると判断した場合は、S1405へ進む。そして、S1405で、図16に示す画面において、第1ドライバ制御部1071が設定されたIDとPasswordを第1情報管理DB1072に保存する。
次に、S1406で、第1ドライバ制御部1071がAgentタスクとして登録するか否かを判断する。具体的には、図16に示した[Next]ボタンBT11が押下されたか、それとも、[Cancel]ボタンBT12が押下されたかに基づいて判断する。
ここで、第1ドライバ制御部1071が[Next]ボタンBT11が押下されたと判断した場合は、S1407へ進み、図17に一例を示すAgentタスクとして登録するためのタスク登録画面を第2表示部2010に表示する。なお、第1ドライバ制御部1071が[Cancel]ボタンBT12が押下されたと判断した場合は、本処理を終了する。
図17は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、タスク登録画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。本画面は、1ペインで構成され、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図17において、[Task Registration Settings]セクションSC3はAgentタスクの登録を示すセクションである。[Task Name]カラムC171は、スケジューラに登録するタスクの名称示すセクションである。[Schedule]カラムC172は、そのタスクを即時実行するか、日時実行するか、登録のみとするかを設定するためのセクションである。[Schedule]カラムC172は、それぞれ[Immediate execution]S1、[Execution at specific date]S2、[Only registration]S3より選択する。
[Register]ボタンBT171は、後述するスケジューラへの登録するためのコントロールボタンである。[Cancel]ボタンBT172は、本画面での処理を無効にし、所定のUIへ移動するためのコントロールボタンである。
本例では、タスク名称が、<Agent Installation 001>であり、それを<2005/1/1 13:00:00>に実行することを意味している。
次に、上記[Register]ボタンBT171を押下することにより、S1408へ進み、第1ドライバ制御部1071が制御するスケジューラへ設定したスケジュールを登録して、本処理を終了する。
なお、ここでスケジューラとは、サーバ1000の第1ドライバ制御部1071が実行する機能であって、上記手順に基づいて作成して第1記憶部1060に登録されたタスクを一括して管理するものである。なお、スケジューラは、設定された動作モードに応じて、第1ドライバ制御部1071にイベントを発生する一般的なものであることは言うまでもない。
ここで、動作モードとは、上記図17に示した[Schedule]カラムC172の[Immediate execution]S1、[Execution at specific date]S2等に対応する。
(インストレーション処理−Agentタスク実行処理)
図18は、本実施形態を示すサーバ装置における第5のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS41で、インストレーションの要求と判断された場合における、S48,S49に対応するAgentインストール処理の詳細手順に対応する。なお、S1801〜S1808は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
図18は、本実施形態を示すサーバ装置における第5のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS41で、インストレーションの要求と判断された場合における、S48,S49に対応するAgentインストール処理の詳細手順に対応する。なお、S1801〜S1808は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
まず、S1801で、第1ドライバ制御部1071がターゲットであるクライアントの管理者IDとPasswordを第1情報管理DB部1072にアクセスし、取得処理を行う。そして、S1802で、第1ドライバ制御部1071が管理者IDとPasswordの取得を行うことができたか否かを判断する。ここで、第1情報管理DB部1072が管理者IDとPasswordの取得を行うことができなかったと判断した場合は、本処理を終了する。
一方、S1802で、第1情報管理DB部1072が管理者IDとPasswordの取得を行うことができたと判断した場合は、S1803へ進む。
そして、S1803で、第1ドライバ制御部1071がAgent用インストーラに対して、取得した管理者IDとPasswordを添付する。次に、S1804で、サーバ1000からクライアントに対してAgent用インストーラを送付する。この送付には、例えばWMI(Windows(登録商標)で Management Instrumentation)といった方法により送付を行う。
続いて、S1805で、第1ドライバ制御部1071がAgent用インストーラの中から、管理者IDとPasswordを取得する。次に、S1806で、クライアント2100において、取得した管理者IDとPasswordを用いて、そのクライアントに対するログインを行う。そして、S1807で、ログインが可能であったか否かを判断する。ここで、クライアントにログインできなかったと判断した場合は、本処理を終了する。
一方、S1807で、取得した管理者IDとPasswordを用いて、そのクライアントに対するログインできたと判断した場合は、S1808へ進む。そして、S1808で、第1ドライバ制御部1071がAgentインストーラを管理者権限でクライアントにインストールして、本処理を終了する。
〔ドライバとデバイスの関連付け処理〕
図19は、本実施形態を示すサーバ装置における第6のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS42で、関連づけ処理と判断された場合に実行されるS45のドライバとデバイスの関連付け処理の詳細手順に対応する。なお、S1901〜S1909は各ステップを示す。また、また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。さらに、本処理は、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、Webアプリケーションを介して、サーバ1000の第1ドライバ制御部1071にアクセスする。これにより、ことで、サーバ100の第1ドライバ制御部1071が実行する処理である。
図19は、本実施形態を示すサーバ装置における第6のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS42で、関連づけ処理と判断された場合に実行されるS45のドライバとデバイスの関連付け処理の詳細手順に対応する。なお、S1901〜S1909は各ステップを示す。また、また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。さらに、本処理は、図1に示した管理者用PCのクライアント2100の第2表示部2010、第2入力部2020より、Webアプリケーションを介して、サーバ1000の第1ドライバ制御部1071にアクセスする。これにより、ことで、サーバ100の第1ドライバ制御部1071が実行する処理である。
まず、S1901で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、第1情報管理DB部1072に登録されている、例えば図20に示すデバイス一覧画面を第2表示部2010に表示する。
図20は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、デバイス一覧画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図20において、[Device Database]セクションツリービューTVは、サーバ1000により探索されたデバイスに対して、予めグルーピング処理が施された結果がをTreeView形式で表示するツリーである。
本例では、すでに、<1F>、<area11>、<area12>、<area13>、<2F>、<area21>、<area22>といったデバイスグループが存在している状態を表示している。
[Devices]セクションSC201は、[Device Database]セクションツリービューTVで、任意のグループを選択したときに、そのグループに所属しているデバイス一覧を表示されるセクションである。
[Devices]セクションSC201において、[Select]カラムC2001は、ドライバと関連付け対象のデバイスにするか否かの選択を実現するセクションである。[Device Name]カラムC2002は、[Device Database]セクションツリービューTVで、選択されたグループに所属するデバイス一覧を示すカラムである。
[IP Address]カラムC2003は、そのデバイスに割り振られているIPアドレスを示すカラムである。[Location]カラムC2004は、そのデバイスが位置している情報を示すカラムである。
[PDL]カラムC2005は、そのデバイスに搭載されているPDLを示すカラムである。[Language]カラムC2006は、そのデバイスが動作している言語を示すカラムである。[misc]カラムC2007は、ドライバの選定に影響のある情報を示すカラムである。
本例では、<FAX>と記載されている行があるが、これは、デバイスに装着されたFAX機能が、クライアントからファクスドライバなどのプリンタドライバと同様な方式のドライバにより、ファクス送信できることを表示している。すなわち、プリンタドライバと同様にファクスドライバをクライアントにインストールするか否かを判別する情報となる。
他に、同じデバイスでもその排紙機能により、使用するドライバが異なる場合には、そのドライバを選別するためのトリガーとなる情報が表示されるカラムである。
[Next]ボタンBT11は、次の登録画面への移行を実現するコントロールボタンである。[Cancel]ボタンBT12は、本画面での処理を無効にし、所定のUIへ移動を実現するコントロールボタンである。
次に、S1902で、第1ドライバ制御部1071が任意のデイバスが選択されたか否かを判断する。ここで、任意のデバイスが選択されていないと判断した場合は、本処理を終了する。
一方、S1902で、第1ドライバ制御部1071が任意のデバイスが選択されていると判断した場合は、S1903に進む。例えば、図20において、任意のデバイスを[Select]カラムC2001で選択し、[Next]ボタンBT11を押下していると判断した場合に、S1903へ進む。
そして、S1903で、第1ドライバ制御部1071が選択されたデバイスとドライバの対応情報が存在するか否かを判断する。ここで、第1ドライバ制御部1071がデバイスとドライバの対応情報が存在すると判断した場合は、S1904へ進む。そして、S1904で、第1ドライバ制御部1071がデバイスとドライバの対応情報を伴った利用可能なドライバを第1情報管理DB部1072にアクセスして、第2表示部2010に図21に示すドライバ一覧を表示する。
図21は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、ドライバ一覧画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図21において、[Select]カラムC2101は、デバイスと関連付け対象のドライバの選択を実現するカラムである。[Driver Name]カラムC2102は、デバイスと関連付け可能な、すなわち、そのデバイスで利用可能なドライバ一覧を示すカラムである。
[PDL]カラムC2103は、そのドライバが何のPDLに対応しているかの情報を示すカラムである。[Version]カラムC2104は、そのドライバのバージョン情報を示すカラムである。[OS]カラムC2105は、そのドライバが何のOSに対応しているかの情報を示すカラムである。
[Language]カラムC2106は、そのドライバの対応言語を示すカラムである。
[Next]ボタンBT11は次の登録画面への移行を実現するコントロールボタンである。[Cancel]ボタンBT12は、本画面での処理を無効にし、所定のUIへ移動を実現するコントロールボタンである。
これにより、図20に示す画面上で、選択されたデバイスと図21に示した画面上で選択されたドライバとが関連付けられることを意味する。
次に、S1905で、第1ドライバ制御部1071が選択したデバイスに対して、関連付けるドライバが選択されているか否かを判断する。ここで、第1ドライバ制御部1071が選択したデバイスに対して、関連付けるドライバが選択されていないと判断した場合は、本処理を終了する。
一方、S1905で、第1ドライバ制御部1071が選択したデバイスに対して、関連付けるドライバが選択されていると判断した場合は、S1906へ進む。そして、S1906で、第1ドライバ制御部1071が、図22に示す関連付け名称設定画面を第2表示部2010に表示する。
図22は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、関連付け名称設定画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図22において、[Association Name]カラムはC2201は、関連付け名称を設定するエディットボックス等の編集可能な情報を示すカラムである。[Target Device Name]カラムC2202は、関連付けられたデバイス名を示すカラムである。
[Driver to Use]カラムC2203は、関連付けられたドライバ名を示すカラムである。[Register]ボタンBT221は、スケジューラへの登録を実現するコントロールボタンである。
[Cancel]ボタンBT222は、本画面での処理を無効にし、所定のUIへ移動を実現するコントロールボタンである。
次に、S1907で、第1ドライバ制御部1071が図22に対して関連付け名称の設定を行った否かを判断する。ここで、関連付け名称の設定を行っていないと判断した場合は、本処理を終了する。
一方、S1907で、第1ドライバ制御部1071が図22に対して関連付け名称の設定を行っていると判断した場合は、S1908へ進む。
本例では、デバイス<Device−A>に対して、2つのドライバセットが関連付けられている。具体的には、図22に示すように、ドライバ<PS Driver−A v12.00 for W2K for US>と<PS Driver−A v12.00 for W9x for US>の2つである。
最後に、S1908で、第1ドライバ制御部1071が図22に示した関連付け情報を第1情報管理DB部1072へ登録して、本処理を終了する。
一方、S1903で、第1ドライバ制御部1071がデバイスとドライバの対応情報が存在しないと判断した場合は、S1909へ進み、対応情報に従わないドライバ表示を行い、S1905へ進む。
以下、デバイス<Device−A>に対して、2つのドライバセットが関連付けられた場合の関連付け情報の表示例を図23に示す。
図23は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、関連付け結果画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図23において、[Association Information]セクションSC231は、デバイスとドライバの関連付け一覧を示すセクションである。
[Association Name]カラムC2301は、図22に示した[Association Name]カラムC2201にて設定された関連付け名称を一覧にて表示するカラムである。
[Device Name]カラムC2302は、関連付けられたデイバスを示すカラムである。[PDL]カラムC2303は、関連付けられたドライバのPDLを示すカラムである。
[OS]カラムC2304は、関連付けられたドライバの対応OSを示すカラムである。[Language]カラムC2305は、関連付けられたドライバの対応仕向けを示すカラムである。[misc]カラムC2306は、関連付けられたドライバの付加的な情報を示すカラムである。
本例では、<FAX>と記載されている行があるが、これは、関連付けられたドライバが、プリンタドライバではなく、ファイルドライバであること示す。
なお、S1902で、デバイスが選択されていない場合、もしくはS1907で、関連付け名称の設定を行わなかったと判断されたときは、本処理を終了する。同様に、図20、図21において、[Cancel]ボタンBT11が、図22において、[Cancel]ボタンBT221を押下した場合は、本処理を終了する。
〔タスク処理−ドライバインストレーションタスク作成&登録処理〕
図24は、本実施形態を示すサーバ装置における第7のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS46で、ドライバタスク処理と判断された場合に実行されるS48のドライバタスク処理の詳細手順に対応する。なお、S2401〜S2407は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
図24は、本実施形態を示すサーバ装置における第7のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS46で、ドライバタスク処理と判断された場合に実行されるS48のドライバタスク処理の詳細手順に対応する。なお、S2401〜S2407は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
まず、S2401で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、登録されているクライアントを選択するための、例えば図25に示すクライアント選択画面を第2表示部2010に表示する。
図25は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、クライアント選択画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図25において、[Client Database]ツリービューTVは、第1情報管理DB部1072に登録されている選択されたクライアントをツリー形式で表示する。このツリービューTVは、インストールするクライアントをグループ単位で選択するためのツリーである。
[Client Group]セクションSC251は、[Client Database]ツリービューTVにて選択されたクライアントグループに属するクライアントグループの表示および選択を実現するセクションである。
[Clients]セクションSC252は、[Client Group]セクションにて選択されたクライアントグループに属するクライアントグループに属するクライアントの表示および選択を実現するセクションである。
[Select]カラムC2501は、[Client Group]セクションSC251では、ドライバをインストールするクライアントをクライアントグループ単位で選択を実現するカラムである。上記ドライバとは、図1に示したデバイスのいずれかを使用するためのドライバであって、機能は同一であっても、言語やOSのバージョンが異なる等の場合がある。
また、[Clients]セクションSC252では、クライアント単位で選択を実現するセクションである。
[Client Group Name]カラムC2502は、クライアントグループ一覧を示すカラムである。[Client Name]カラムC2503は、クライアント一覧を示すカラムである。[OS]カラムC2504は、クライアントのオペレーティングシステムを示すカラムである。
[Next]ボタンBT252は、次の処理ステップへの移行を指示するボタンである。[Cancel]ボタンBT253は、本画面での処理を無効にし、所定のUIへ移動することを指示するボタンである。
[Add to List]ボタンBT251はリスト登録を指示するボタンである。
次に、S2402で、第1ドライバ制御部1071がターゲットクライアントが選択されたか否かを判断する。ここで、第1ドライバ制御部1071がターゲットクライアントが選択されていないと判断した場合は、本処理を終了する。
一方、S2401で、第1ドライバ制御部1071がターゲットクライアントが選択されていると判断した場合は、S2403へ進む。そして、S2403で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、図26に示すデバイスとドライバの関連付けを選択する選択画面を第2表示部2010に表示する。
図26は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、デバイスとドライバの関連付けを選択する選択画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図26において、[Association Information]セクション261は、デバイスとドライバの関連付け一覧を示すセクションである。
[Select]カラムC2601は、関連づけするために選択されたデバイスを表示するカラムである。[Association Name]カラムC2602は、図22に示した[Association Name]カラムC2201にて設定された関連付け名称を一覧にて表示するカラムである。
[Device Name]カラムC2603は、関連付けられたデイバスを示すカラムである。[PDL]カラムC2604は、関連付けられたドライバのPDLを示すカラムである。[OS]カラムC2605は、関連付けられたドライバの対応OSを示すカラムである。
[Language]カラムC2606は、関連付けられたドライバの対応仕向けを示すカラムである。[misc]カラムC2607は、関連付けられたドライバの付加的な情報を示すカラムである。
本例では、<FAX>と記載されている行があるが、これは、関連付けられたドライバが、プリンタドライバではなく、ファイルドライバであることを表示している状態に対応する。
[OK]ボタンBT262は、次の登録画面への移行を実現するコントロールボタンである。[Delete]ボタンBT261は、選択されたデバイスの削除をコントロールするボタンである。
次に、S2404で、第1ドライバ制御部1071が[OK]ボタンBT262を押下することで、図26に示す画面に表示された関連付け情報を選択したか否かを判断する。ここで、[OK]ボタンBT262が押下されず、図26に示す画面に表示された関連付け情報を選択していないと判断した場合は、本処理を終了する。
一方、S2404で、第1ドライバ制御部1071が図26に示す画面に表示された関連付け情報を選択したと判断した場合は、S2405へ進む。そして、S2405で、第1ドライバ制御部1071が第1情報管理DB部1072にアクセスし、図27に示すデバイスとドライバの関連付け一覧タスクを登録する画面を第2表示部2010に表示する。
図27は、図2に示した第2表示部2010に表示されるユーザインタフェース画面の一例を示す図である。本例は、デバイスとドライバの関連付け一覧タスクを登録する画面例である。以下、1つのセクションとそれぞれのカラムとボタンについて説明する。
本画面は、サーバ1000からWebアプリケーションを介してクライアント2100がWeb情報を取得することで、クライアント2100の第2表示部2010で表示可能に構成されている。
図27において、[Task Registration Settings]セクションSC271は、ドライバインストレーションタスクの登録するセクションである。
[Task Name]カラムS2701はスケジューラに登録するタスクの名称を示すカラムである。ここで、スケジューラとは、Agentタスクの登録処理で説明したスケジューラと同様の機能を実行する。
[Schedule]カラムS2702は、そのタスクを即時実行するか、日時実行するか、登録のみとするかを決定するカラムである。
本実施形態では、[Immediate execution]TM1、[Execution at specific date]TM2、[Only registration]TM3よりいずれかを選択する。
[Register]ボタンBT272は、表示内容をスケジューラに登録することを指示する登録ボタンである。
また、[Cancel]ボタンBT273は、本画面での処理を無効にし、所定のUIへ移動することを指示するボタンである。[Back]ボタンBT271は、1つ前の状態に戻ることを指示するボタンである。
本例では、タスク名称が、<Printer Driver Installation 001>であり、それを<2005/3/1 13:00:00>に実行すること表示している状態に対応する。これにより、サーバ1000の第1ドライバ制御部1071のスケジューラ機能に基づいて、時刻<2005/3/1 13:00:00>に、Printer Driver Installation 001をインストールする。具体的には、図25に示した画面で選択された[Client Group]セクションSC251で選択されたClient Groupに対して、サーバ1000が上記プリンタドライバをインストールする。
次に、S2406で、図27に示した画面において、[Register]ボタンBT272を押下することで、ドライバタスク登録処理が要求されているか否かを判断する。ここで、第1ドライバ制御部1071が[Register]ボタンBT272を押下されていないと判断した場合は、本処理を終了する。
一方、S2406で、第1ドライバ制御部1071が[Register]ボタンBT272を押下されていると判断した場合は、S2407へ進む。そして、S2407で、第1ドライバ制御部1071が制御するプリンタドライバのインストール処理をスケジューラへ登録して、本処理を終了する。
なお、ここでスケジューラとは、上記タスクを一括して管理するものであり、設定された動作モードに応じて、第1ドライバ制御部1071にエベントを発生する一般的なものであるものとする。ここで、動作モードとは、[Immediate execution]、[Execution at specific date]等のプリンタドライバのインストールタイミングを決定する時間的な要素に対応する。
〔インストレーション処理−ドライバインストレーションタスク実行処理〕
図28は、本実施形態を示すサーバ装置における第8のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS41で、インストレーション要求であると判断され、S48で、クライアントへのドライバのインストレーション要求であると判断された場合に実行されるS50のインストール処理の詳細手順に対応する。
図28は、本実施形態を示すサーバ装置における第8のデータ処理手順の一例を示すフローチャートである。本例は、図4に示したS41で、インストレーション要求であると判断され、S48で、クライアントへのドライバのインストレーション要求であると判断された場合に実行されるS50のインストール処理の詳細手順に対応する。
なお、S2801〜S2803は各ステップを示す。また、各ステップは、管理者用PCであるクライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。また、サーバ1000とクライアント2100間では、Webサービスといった一般的な方式のやり取りにより、情報伝達を実現するものとする。
まず、S2801で、第1ドライバ制御部1071がサーバ1000からクライアント2100のAgentに対して、タスクの問い合わせを行うように要求指示を行う。Agentは、図4に示したS47において、先のAgentタスク処理でサーバ1000からクライアントにインストールされている。
次に、S2802で、クライアントのAgentは、サーバ1000に対して、タスクがあるか否かのタスク要求を発行するので、第1ドライバ制御部1071がクライアントからのタスク要求を取得する。
そして、S2803で、サーバ1000はクライアントのAgentに対して、タスクをクライアントのAgentが保持するキューに送付して、本処理を終了する。ここで、クライアントとは、図1に示したクライアント2200、2400、2500等である。また、これらのクライアントは、図25に示した画面において、プリンタドライバのインストールタスク生成に選択されたグループで選択されているクライアントである。
図29は、本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。本例は、図28に示すサーバ1000からのタスク実行処理に伴うクライアント側のタスク処理である。なお、S2901〜S2904は各ステップを示す。また、各ステップは、クライアント2100のCPUが制御プログラムをRAMにロードして実行することで実現される。
まず、S2901で、クライアントのAgentは、サーバ1000からタスクの問い合わせを受信するのを待つ。そして、タスクの問い合わせを受信したら、S2902で、クライアントのAgentは、サーバ1000に対して、自分宛のタスクがあるか否かのタスク要求を発行する。そして、S2903で、クライアントの第2ドライバ制御部2071は、クライアントのAgentに対して送付されるタスクをキューが取得するのを待ち、キューがタスクを取得したら、それを保持する。
次に、S2904で、クライアントのAgentは、そのAgentの管理するキューを参照し、順次ドライバのインストレーションタスクを実行して、本処理を終了する。
なお、上記実施形態では、タスク例として、デバイスドライバのインストールする追加タスク、インストールされているデバイスドライバを削除する削除タスクについて説明した。これに加えて、サーバ1000の第1ドライバ制御部1071は、インストールされているデバイスを更新する更新タスクも同様に実行可能である。
〔第2実施形態〕
以下、図30、図31に示すメモリマップを参照して本実施形態を示す情報処理装置、サーバ装置で読み取り可能なデータ処理プログラムの構成について説明する。
以下、図30、図31に示すメモリマップを参照して本実施形態を示す情報処理装置、サーバ装置で読み取り可能なデータ処理プログラムの構成について説明する。
図30は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
図31は、本発明に係るサーバ装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図4、図7、図11、図14、図18、図19、図24,図28、図29に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
1000 サーバ
1010 第1表示部
1020 第1入力部
1060 第1記憶部
1072 第1データ制御部
2100 クライアント
2010 第2表示部
2020 第2入力部
2060 第2記憶部
2072 第2データ制御部
1010 第1表示部
1020 第1入力部
1060 第1記憶部
1072 第1データ制御部
2100 クライアント
2010 第2表示部
2020 第2入力部
2060 第2記憶部
2072 第2データ制御部
Claims (22)
- 複数のクライアント装置がネットワーク上に接続される複数のデバイスのいずれかを使用可能とするためのデバイスドライバを管理するサーバ装置であって、
各デバイスに対してインストール可能なデバイスドライバを関連づけて記憶する記憶手段と、
前記記憶手段に記憶されたいずれかのデバイスドライバに対して異なるタスクを生成する生成手段と、
前記生成手段が生成した異なるタスクを実行するスケジュールを作成する作成手段と、
前記作成手段により作成されたスケジュールに基づいて、前記生成手段が生成した異なるタスクを実行する実行手段と、
を有することを特徴とするサーバ装置。 - 前記異なるタスクは、前記デバイスドライバをいずれかのクライアント装置に追加インストールする追加タスク、前記クライアント装置にインストールされているデバイスドライバを削除する削除タスク、クライアント装置にインストールされているデバイスドライバを更新する更新タスクを含むことを特徴とする請求項1記載のサーバ装置。
- 前記生成手段が生成する追加タスクは、いずれかのクライアント装置にデバイスドライバのインストールを問い合わせるエージェントをインストールするエージェントインストールタスクであることを特徴とする請求項1記載のサーバ装置。
- 前記生成手段が生成する追加タスクは、いずれかのクライアント装置にインストールされるエージェントからの問い合わせに応じて、いずれかのデバイスドライバインストールするエージェントインストールタスクであることを特徴とする請求項1記載のサーバ装置。
- 前記実行手段は、いずれかのクライアント装置にデバイスドライバのインストールを問い合わせるエージェントをインストールするエージェントインストールタスクを実行することを特徴とする請求項1記載のサーバ装置。
- 前記実行手段は、いずれかのクライアント装置にインストールされるエージェントからの問い合わせに応じて、いずれかのデバイスドライバをインストールするエージェントインストールタスクを実行することを特徴とする請求項1記載のサーバ装置。
- 前記デバイスドライバは、前記ネットワークに接続されるプリンタデバイスを制御するプリンタドライバであることを特徴とする請求項1乃至6のいずれかに記載のサーバ装置。
- ネットワーク上に接続される複数のデバイスのいずれかを使用可能とするためのデバイスドライバを管理するサーバ装置と通信可能なクライアント装置であって、
前記サーバ装置が実行するタスクでインストールされるエージェントを備え、
前記エージェントは、デバイスドライバをインストールすべきタスクが登録されているかどうかを問い合わせる問い合わせ手段と、
前記問い合わせ手段による問い合わせに応じて前記サーバ装置から取得するデバイスドライバをインストールするインストール手段と、
を有することを特徴とするクライアント装置。 - 前記エージェントは、前記インストールされているデバイスドライバを更新する更新手段を有することを特徴とする請求項8記載のクライアント装置。
- 前記エージェントは、前記インストールされているデバイスドライバを削除する削除手段を有することを特徴とする請求項8記載のクライアント装置。
- 複数のクライアント装置がネットワーク上に接続される複数のデバイスを使用可能とするためのデバイスドライバを管理するサーバ装置におけるドライバ処理方法であって、
各デバイスに対してインストール可能なデバイスドライバを関連づけて記憶手段に登録する登録工程と、
前記記憶手段に登録されたいずれかのデバイスドライバに対して異なるタスクを生成する生成工程と、
前記生成工程が生成した異なるタスクを実行するスケジュールを作成する作成工程と、
前記作成工程により作成されたスケジュールに基づいて、前記生成工程が生成した異なるタスクを実行する実行工程と、
を有することを特徴とするドライバ処理方法。 - 前記異なるタスクは、前記デバイスドライバをいずれかのクライアント装置に追加インストールする追加タスク、前記クライアント装置にインストールされているデバイスドライバを削除する削除タスク、クライアント装置にインストールされているデバイスドライバを更新する更新タスクを含むことを特徴とする請求項11記載のドライバ処理方法。
- 前記生成工程が生成する追加タスクは、いずれかのクライアント装置にデバイスドライバのインストールを問い合わせるエージェントをインストールするエージェントインストールタスクであることを特徴とする請求項11記載のドライバ処理方法。
- 前記生成工程が生成する追加タスクは、いずれかのクライアント装置にインストールされるエージェントからの問い合わせに応じて、いずれかのデバイスドライバをインストールするエージェントインストールタスクであることを特徴とする請求項11記載のドライバ処理方法。
- 前記実行工程は、いずれかのクライアント装置にデバイスドライバのインストールを問い合わせるエージェントをインストールするエージェントインストールタスクを実行することを特徴とする請求項11記載のドライバ処理方法。
- 前記実行工程は、いずれかのクライアント装置にインストールされるエージェントからの問い合わせに応じて、いずれかのデバイスドライバインストールするエージェントインストールタスクを実行することを特徴とする請求項11記載のドライバ処理方法。
- 前記デバイスドライバは、前記ネットワークに接続されるプリンタデバイスを制御するプリンタドライバであることを特徴とする請求項11乃至16のいずれかに記載のドライバ処理方法。
- ネットワーク上に接続される複数のデバイスのいずれかを使用可能とするためのデバイスドライバを管理するサーバ装置と通信可能なクライアント装置におけるドライバ処理方法であって、
前記サーバ装置が実行するタスクでエージェントをインストールするインストール工程と、
前記エージェントは、デバイスドライバをインストールすべきタスクが登録されているかどうかを問い合わせる問い合わせ工程と、
前記問い合わせ工程による問い合わせに応じて前記サーバ装置から取得するデバイスドライバをインストールするインストール工程と、
を有することを特徴とするドライバ処理方法。 - 前記エージェントは、前記インストールされているデバイスドライバを更新する更新工程を有することを特徴とする請求項18記載のドライバ処理方法。
- 前記エージェントは、前記インストールされているデバイスドライバを削除する削除工程とを有することを特徴とする請求項18記載のドライバ処理方法。
- 請求項11乃至20のいずれかに記載のドライバ処理方法をコンピュータに実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
- 請求項11乃至20のいずれかに記載のドライバ処理方法をコンピュータに実行させることを特徴とするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007036113A JP2008203929A (ja) | 2007-02-16 | 2007-02-16 | サーバ装置、クライアント装置、ドライバ処理方法、記憶媒体、プログラム |
US11/837,812 US8689242B2 (en) | 2007-02-16 | 2007-08-13 | Information processing apparatus for controlling installation, method for controlling the apparatus and control program for executing the method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007036113A JP2008203929A (ja) | 2007-02-16 | 2007-02-16 | サーバ装置、クライアント装置、ドライバ処理方法、記憶媒体、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008203929A true JP2008203929A (ja) | 2008-09-04 |
Family
ID=39707744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007036113A Withdrawn JP2008203929A (ja) | 2007-02-16 | 2007-02-16 | サーバ装置、クライアント装置、ドライバ処理方法、記憶媒体、プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8689242B2 (ja) |
JP (1) | JP2008203929A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8610913B2 (en) | 2011-04-11 | 2013-12-17 | Canon Kabushiki Kaisha | Server apparatus and method for the same |
US8860983B2 (en) | 2009-08-24 | 2014-10-14 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and program |
JP2014229032A (ja) * | 2013-05-21 | 2014-12-08 | 京セラドキュメントソリューションズ株式会社 | インストーラープログラムおよびインストール方法 |
JP2019162772A (ja) * | 2018-03-19 | 2019-09-26 | 株式会社リコー | 情報処理装置及び情報処理方法 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010157134A (ja) * | 2008-12-27 | 2010-07-15 | Canon Inc | 情報処理装置、情報処理方法及び情報処理システム |
GB2483166B (en) | 2010-08-27 | 2013-10-23 | Fxi Technologies As | Electronic devices |
JP5980040B2 (ja) | 2012-08-10 | 2016-08-31 | キヤノン株式会社 | 管理装置、管理装置の制御方法およびコンピュータプログラム |
KR20180060200A (ko) * | 2016-11-28 | 2018-06-07 | 에이치피프린팅코리아 주식회사 | 호스트 디바이스에 프린터 드라이버를 설치하는 화상 형성 장치 및 방법 |
JP7196134B2 (ja) * | 2020-06-15 | 2022-12-26 | キヤノン株式会社 | 管理装置、方法、およびプログラム |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5845090A (en) * | 1994-02-14 | 1998-12-01 | Platinium Technology, Inc. | System for software distribution in a digital computer network |
US5580177A (en) * | 1994-03-29 | 1996-12-03 | Hewlett-Packard Company | Printer/client network with centrally updated printer drivers and printer status monitoring |
US5692111A (en) * | 1994-10-05 | 1997-11-25 | Microsoft Corporation | Automatic installation of printers in a distributed environment |
US6009274A (en) * | 1996-12-13 | 1999-12-28 | 3Com Corporation | Method and apparatus for automatically updating software components on end systems over a network |
US6542892B1 (en) * | 1999-04-07 | 2003-04-01 | Hewlett-Packard Development Company, L.P. | Configuring a client for a printer using electronic mail |
JP3740346B2 (ja) * | 2000-02-04 | 2006-02-01 | キヤノン株式会社 | サーバ装置およびデバイス装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体 |
DE60132438T2 (de) * | 2000-02-08 | 2009-01-08 | Ricoh Co., Ltd. | Gerätverwaltungssystem |
AU2001294677A1 (en) * | 2000-09-22 | 2002-04-02 | Patchlink.Com Corporation | Non-invasive automatic offsite patch fingerprinting and updating system and method |
US7065564B2 (en) * | 2000-12-22 | 2006-06-20 | Canon Kabushiki Kaisha | Network system, method and apparatus for processing information, and control program |
US7016062B2 (en) * | 2000-11-30 | 2006-03-21 | Ricoh Company, Ltd. | Apparatus, method and system for printing from a wireless mobile device over the internet |
US7743374B2 (en) * | 2000-12-21 | 2010-06-22 | Canon Kabushiki Kaisha | Network system, information processing apparatus, information processing method, and control program for remote driver installation |
US20030120624A1 (en) * | 2001-12-10 | 2003-06-26 | Poppenga Burton H. | System and method for efficiently installing and configuring device drivers in managed environments |
US7213060B2 (en) * | 2002-04-23 | 2007-05-01 | Canon Kabushiki Kaisha | Web based creation of printer instances on a workstation |
US7689673B2 (en) * | 2002-04-23 | 2010-03-30 | Canon Kabushiki Kaisha | Remote creation of printer instances on a workstation |
JP4340476B2 (ja) * | 2002-06-28 | 2009-10-07 | 株式会社リコー | ソフトウェア導入方法、その方法をコンピュータに実行させるプログラム及びそのプログラムを格納した媒体 |
US20040057072A1 (en) * | 2002-09-23 | 2004-03-25 | Borchers Gregory E. | Network printer driver pre-configuration for downloading and installation |
JP3919721B2 (ja) * | 2002-10-29 | 2007-05-30 | キヤノン株式会社 | 情報処理方法及び情報処理装置 |
US20050012951A1 (en) * | 2003-07-18 | 2005-01-20 | Madril Robert J. | Printer driver management |
US7376666B2 (en) * | 2004-03-19 | 2008-05-20 | Sharp Laboratories Of America, Inc. | Driver database auto-configuration methods and means |
JP2006127218A (ja) * | 2004-10-29 | 2006-05-18 | Oki Data Corp | ドライバソフトウェアインストール方法、それを用いた情報処理装置、そのコンピュータプログラムおよび記憶媒体 |
JP4863450B2 (ja) * | 2005-03-29 | 2012-01-25 | キヤノン株式会社 | デバイスドライバプログラムをカスタマイズするための情報処理装置及びデバイスドライバプログラムのカスタマイズ方法 |
US20060248522A1 (en) * | 2005-04-15 | 2006-11-02 | Microsoft Corporation | Deploying agent software to managed computer systems |
US20070285704A1 (en) * | 2006-06-09 | 2007-12-13 | Yuwen Wu | Automatic printer registration |
-
2007
- 2007-02-16 JP JP2007036113A patent/JP2008203929A/ja not_active Withdrawn
- 2007-08-13 US US11/837,812 patent/US8689242B2/en not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8860983B2 (en) | 2009-08-24 | 2014-10-14 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and program |
US8610913B2 (en) | 2011-04-11 | 2013-12-17 | Canon Kabushiki Kaisha | Server apparatus and method for the same |
JP2014229032A (ja) * | 2013-05-21 | 2014-12-08 | 京セラドキュメントソリューションズ株式会社 | インストーラープログラムおよびインストール方法 |
JP2019162772A (ja) * | 2018-03-19 | 2019-09-26 | 株式会社リコー | 情報処理装置及び情報処理方法 |
JP7119461B2 (ja) | 2018-03-19 | 2022-08-17 | 株式会社リコー | 情報処理装置及び情報処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20080201714A1 (en) | 2008-08-21 |
US8689242B2 (en) | 2014-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2008203930A (ja) | サーバ装置、ドライバ処理方法、記憶媒体、プログラム | |
JP2008203929A (ja) | サーバ装置、クライアント装置、ドライバ処理方法、記憶媒体、プログラム | |
JP5293035B2 (ja) | データ処理装置、データ処理方法、プログラムおよび記録媒体 | |
JP5460200B2 (ja) | 印刷制御装置、印刷制御方法、及びコンピュータプログラム | |
US20040223182A1 (en) | Information processing apparatus, information processing method, and control program | |
US20120059916A1 (en) | Network device management system, network device management apparatus, client apparatus, and network device management method | |
JP2007237395A (ja) | 印刷装置及び情報処理装置及びそれらの制御方法、印刷管理システム、プログラム | |
JP2006164240A (ja) | データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム | |
US20110176170A1 (en) | Printing apparatus, printing system, and control method | |
CN107977171B (zh) | 打印管理设备以及存储打印管理程序的计算机可读介质 | |
JP2006099307A (ja) | 分散サーバへのアプリケーションセットのインストール方法 | |
JP3774684B2 (ja) | 情報処理装置および情報処理装置のプリンタ設定方法およびプログラムおよび記録媒体 | |
JP4287830B2 (ja) | ジョブ管理装置、ジョブ管理方法及びジョブ管理プログラム | |
US7202961B2 (en) | Method for dynamically creating a printer driver | |
JP4886501B2 (ja) | 印刷装置、印刷制御方法、及びプログラム | |
JP4425808B2 (ja) | 印刷情報処理装置、印刷情報処理プログラム及び記録媒体 | |
US20040051901A1 (en) | Information processsing apparatus, a function extension program, computer readable storage medium storing the program, and information processing method | |
JP4912288B2 (ja) | 管理装置及び情報処理方法 | |
US20190347051A1 (en) | Print control method and print controller | |
JP4903064B2 (ja) | 印刷制御装置、印刷制御方法、及び印刷制御プログラム | |
JP2006163993A (ja) | データ処理システムおよびデータ処理装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム | |
JP2010218352A (ja) | 機器管理装置、画像形成装置、及び機器管理プログラム | |
JP5389219B2 (ja) | 情報処理装置、印刷設定方法、及びプログラム | |
JP5140350B2 (ja) | 情報処理装置 | |
JP2009064060A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20100511 |