JP4617038B2 - Information processing apparatus, method, and control program - Google Patents

Information processing apparatus, method, and control program Download PDF

Info

Publication number
JP4617038B2
JP4617038B2 JP2001355021A JP2001355021A JP4617038B2 JP 4617038 B2 JP4617038 B2 JP 4617038B2 JP 2001355021 A JP2001355021 A JP 2001355021A JP 2001355021 A JP2001355021 A JP 2001355021A JP 4617038 B2 JP4617038 B2 JP 4617038B2
Authority
JP
Japan
Prior art keywords
driver
property information
information
information processing
processing apparatus
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.)
Expired - Fee Related
Application number
JP2001355021A
Other languages
Japanese (ja)
Other versions
JP2002251347A5 (en
JP2002251347A (en
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2001355021A priority Critical patent/JP4617038B2/en
Priority to US10/011,975 priority patent/US7065564B2/en
Publication of JP2002251347A publication Critical patent/JP2002251347A/en
Publication of JP2002251347A5 publication Critical patent/JP2002251347A5/ja
Priority to US11/418,025 priority patent/US7606874B2/en
Priority to US12/390,403 priority patent/US20090219568A1/en
Application granted granted Critical
Publication of JP4617038B2 publication Critical patent/JP4617038B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は情報処理装置、方法及び制御プログラム係り、ネットワーク上で共有されたPCや周辺機器の表示や管理等を行うものに関するものである。
【0002】
【従来の技術】
近年、パーソナルコンピュータ(以下、PCと称する)や、プリンタ、スキャナ、デジタルカメラ等の周辺機器の普及と共に、LAN等のネットワークも普及してきており、ネットワーク上で複数のPCによりプリンタ、モデム、スキャナ等を共有するニーズも増えてきた。また、これらの周辺機器を使用するためのドライバも数多く提供され、そのインストール方法も提供されてきた。
【0003】
【発明が解決しようとする課題】
しかしながら、周辺機器のドライバが機能アップ等の理由によりバージョンアップされた場合に、ユーザ自身がドライバのバージョンアップを行わなければならなかった。ユーザ自身がドライバのバージョンアップを行う際、新しいドライバ情報をネットワーク上に共有されているPC(サーバPC等)の特定フォルダに記憶させ、ドライバをバージョンアップする各PC上で当該ドライバ情報を使ってそれぞれバージョンアップすることが一般的であった。
【0004】
しかし、これらの方法でバージョンアップした場合には、次のような問題点がある。すなわち、各ドライバにプロパティ情報として設定されているユーザ情報、例えば、レイアウト情報やフォント情報、或いはそのネットワークシステム内で共通に設定されているデバイスオプション情報等がドライバの初期状態に設定されてしまうという問題である。このために、結局は、インストール時に初期状態に戻ってしまうドライバのプロパティ情報の設定をしなければならない。これらの理由により、ドライバをインストール後のドライバのプロパティ情報を設定する操作が面倒であるばかりではなく、それらの設定を行う項目も複雑になってきているので、設定ミス等の原因になっているという問題がある。
【0005】
そのため、今後は、ドライバの自動バージョンアップを行うことが考えられる。例えば、システム管理者が一度に複数のPC上のドライバをサーバPC等から指示を出すことでバージョンアップする。各PC上でユーザが特に新しいドライバ情報が記憶されているフォルダを意識することなくバージョンアップが可能になる。
【0006】
しかし、ドライバのインストール、バージョンアップ、セットアップの手順は、デバイス毎に異なる。また、デバイスやクライアント装置の環境に応じてドライバの種類を選択しなければならず、操作が煩雑である。また、クライアント装置における指示に基づきドライバの追加や変更、各クライアントにおいて、ドライバのプロパティ情報の設定等、煩雑な処理を実行せねばならず、非常に作業効率が悪いという問題がある。
【0007】
このように、各PCのユーザ、或いは、PCのソフトウェアの設定をシステム管理者に任せている場合にはシステム管理者に負荷がかかり、作業効率が悪くなってしまうという問題がある。さらに、近年は大規模なシステムにおいて、多数のPCにインストールを行う場合が多くなってきている。多数のPCに対するドライバのインストール後には、多数のPC上の複雑なドライバのプロパティの設定を行う必要が生じてくる。このような状況下では、さらにユーザの労力並びに多数のPCの設定を行うシステム管理者が必要とされ、また、設定ミスも生じることが多くなるという問題がある。
【0008】
本発明は上記のような点に鑑みてなされたものであり、プロパティ情報をネットワーク上で簡単な操作で更新可能にする仕組みを提供することを目的とする。
【0009】
さらに、ドライバのプロパティ情報の設定の労力を軽減し、設定ミスを削減すべく、クライアントに導入されているドライバのバージョンアップを行う際、サーバ装置からドライバのプロパティ情報を配信してクライアント装置に設定する仕組みを提供することを目的とする。
【0010】
さらに、各クライアントにおいて行われていたドライバのインストール並びにプロパティ情報の設定処理の負担を軽減すべく、サーバ装置からのセットアップ指示によりドライバのプッシュインストールを行い、当該ドライバに対するプロパティ情報の設定処理を行う仕組みを提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明の情報処理装置は、クライアント装置と通信する情報処理装置において、当該情報処理装置の表示部に表示されるユーザインタフェースを用いて、周辺装置を制御するプログラムであるドライバを配信すべき複数のクライアント装置を選択させ選択手段と、当該情報処理装置の表示部に表示されるユーザインタフェースを用いて、前記ドライバのプロパティ情報を配信するか否か、配信する場合はその配信するプロパティ情報を指定させる指定手段と、前記指定手段でプロパティ情報の配信を行うことが指定されている場合には、前記選択手段で選択された複数のクライアント装置に対して、前記指定手段で指定された前記ドライバのプロパティ情報と、前記ドライバと、前記ドライバのセットアップ指示とを配信し、前記指定手段でプロパティ情報の配信を行うことが指定されていない場合には、前記選択手段で選択された複数のクライアント装置に対して、前記ドライバと、前記ドライバのセットアップ指示とを配信するよう制御する配信制御手段とを備えたことを特徴とする。
【0013】
【発明の実施の形態】
以下、図面を参照して、本発明のネットワークシステム、情報処理装置、方法、制御プログラム、及びコンピュータ読み取り可能な記憶媒体の実施の形態について説明する。
【0014】
図1は、本実施の形態に係る装置の概略構成を説明するブロック図である。同図において、1はシステムバスであり、当該システムバス1を介して以下に述べる各構成ブロックが接続されている。
【0015】
2はCPU(Central Processing Unit)である。3はプログラムメモリ(以下、PMEMと称する)であり、後述する処理のためのプログラムを適宜ハードディスク10から選択/読込みし、CPU2にて実行する。また、キーボード12から入力されたデータは、テキストメモリでもあるPMEMにコード情報として格納される。
【0016】
4は通信制御部であり、通信ポート5における入出力データの制御を行う。通信ポート5から出力された信号は、通信回線6を経由して、ネットワーク上の他の装置(図1では符号7を付す)の通信ポートに伝えられる。ネットワーク上で共有されているプリンタやスキャナ等とのやり取りは、この通信制御部4を介して行われる。本実施の形態では、LAN等のネットワークに関して記述するが、この通信制御部4に接続される通信ポート5及び通信回線6が一般の公衆回線であっても本発明が適応されることは言うまでもない。
【0017】
8は外部記憶装置制御部である。9、10はデータファイル用のディスクで、例えば9はフレキシブルディスクFDであり、10はハードディスクHDである。
【0018】
11は入力制御部であり、キーボード12、マウス13等の入力装置が接続される。ユーザは、キーボード12を操作することによりシステムの動作指令等を行うことができる。また、マウス13はCRT16上で画像情報を加工指示するためのポインティング・デバイスPDとして機能し、これによりCRT16上のカーソルをX,Y方向任意に移動してコマンドメニュー上のコマンド・アイコンを選択して処理の指示を行う他、編集対象の指示、描画位置の指示等も行うことができる。
【0019】
14はビデオイメージメモリ(VRAM)であり、15は表示出力制御部であり、16はCRT(Cathode-Ray Tube)である。CRT16に表示されるデータは、VRAM14上にビットマップデータとして展開される。
【0020】
17はプリンタ制御部であり、接続されているプリンタ18に対するデータの出力制御を行う。1Aは、画像読み取り装置制御部であり、接続されている画像読み取り機器1Bの制御を行う。
【0021】
なお、本実施の形態でPMEM3に記憶しているプログラムは、ハードディスク10やフレキシブルディスク9等の記憶媒体に記憶されていてもよい。さらに、ネットワークに接続されている他の装置上に記憶されていてもよい。
【0022】
(第1の実施の形態)
以下、図2乃至9を参照して、第1の実施の形態について説明する。図2は、サーバ装置として機能するPCの処理動作を示すフローチャートである。まず、ステップS201で、サーバ装置は、ネットワーク上の全てのPC及び周辺機器の接続情報を取得し、その情報を記憶する。
【0023】
次に、ステップS202で、サーバ装置は、各PCにおける周辺機器ドライバのセットアップ情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、FAX等のドライバのことである。セットアップ情報の取得方法として、例えば、各PC上で自機にインストールされているセットアップ情報を取得するモジュールを起動させることで情報を収集して、それらの情報を、ネットワークを通じて送受信することが考えられる。ステップS203では、サーバ装置は、取得した情報を基にネットワーク上の全てのPC及び周辺機器の接続情報を表示する。以下では、セットアップ情報としてのドライバ情報構造体を用いた実施の形態を説明していく。
【0024】
図3はドライバ情報構造体の一例を示す図である。PC名称、IPアドレス、OS(オペレーティングシステム)種類、ユーザ名、デバイスドライバ数、各デバイスドライバの情報、デバイスドライバそのものであるドライバ情報及びデバイスドライバのプロパティ情報から構成される。各デバイスドライバ情報は、プリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有名、ドライバ情報アドレス、プロパティ情報名称、プロパティ情報アドレスで構成される。例えば、1番目に登録されているプリンタは、ドライバ名がLASER-830、バージョンが1.00.00、出力ポートがローカル、共有名がLASER-830、ドライバ情報アドレスが0x10000、プロパティ情報名称が標準設定、プロパティ情報アドレスが0x50000となっている。この情報を、PCごとに記録する。
【0025】
また、図4は、プロパティ情報の構造体の一例を示す図である。この例はプリンタドライバのプロパティ情報であり、本実施の形態においては、ページ設定、仕上げ設定、給紙設定、印刷品質設定について設定されている例が示されている。プロパティ情報は、印刷処理を行う際にドライバモジュールが参照する情報を含む。この構造体は、ドライバ種類やバージョン等によって異なる。プロパティ情報は、OSのレジストリに保持させることもできる。また、ドライバに対して情報の入力を行い、入力した情報をドライバによってプロパティ情報の外部情報、例えば、外部ファイルとして出力させることもできる。
【0026】
ここで、図14は、ドライバのプロパティ情報の設定画面を示す図である。以下、ドライバによるプロパティ情報の生成、並びに、外部情報の好適な一例である外部ファイル出力処理について説明する。サーバ装置のCRTにおいて表示され、ユーザはポインティング・デバイスやキーボードを用いて画面のGUI(グラフィカルユーザインタフェース)を操作する。
【0027】
プロパティ情報には、ステイプルの有無に代表される仕上げ処理、印刷品質、デバイスを操作する給紙情報等も設定することができる。ここでは、例として、プロパティ情報選択タブ1401は、ページ設定のタブを選択した状態になっている。1402はユーザがお気に入りのプロパティ情報を選択するお気に入り選択部である。
【0028】
1403はプロパティ情報追加指示部である。プロパティ情報追加指示部1403を指示すると、図15に示すようにプロパティ情報追加画面が表れる。1404はプロパティ情報編集部である。プロパティ情報編集部1404を指示すると、図17に示すようにお気に入り編集画面が表れる。
【0029】
1406乃至1413はプロパティ情報に格納されるパラメータを指示するパラメータ指示部である。出力用紙サイズ1406、部数1407、印刷の向き1408、2in1などのページレイアウト1409、ページレイアウトの配置順1410、印刷データに埋め込まれる透かし印刷を含むスタンプの有無1412、スタンプの種類1411、ステイプルの有無やソートの方法(例えば、フェイスアップ・フェイスダウン)等のデバイス制御情報1413を指定することができる。
【0030】
1414はプロパティ情報確認部であり、プロパティ情報確認部1414を押下すると、プロパティ情報のパラメータの内容を確認できる画面(図示せず)が表示される。
【0031】
1415〜1421は、それぞれユーザ定義用紙、1416はページオプション、標準に戻す、OK、キャンセル、適用、ヘルプを選択するための選択部である。
【0032】
管理者は、1401乃至1421を操作して、上記パラメータをプロパティ情報として、サーバ装置のドライバに記憶させる。
【0033】
図15は、プロパティ情報追加画面を示す図である。1501はプロパティ情報の名称を入力する名称入力部1501である。1502はプロパティ情報に対応するアイコンを指定するアイコン指定部である。1503はプロパティ情報に関連するコメントを入力することができるコメント入力部である。1504はプロパティ情報表示切り換え部である。
【0034】
1506はプロパティ情報表示部である。1507は画面切り換えボタンであり、OKを押すと、現在ドライバに設定されている(プロパティ情報表示部1506に一部表示されている)パラメータがプロパティ情報として登録される。図15の例では、「調達課 注文票」というプロパティ情報名で、プロパティ情報は保存される。保存処理が終了すると、図16に示すように、プロパティ情報設定画面になる。
【0035】
図16に示すように、プロパティ情報として「調達課 注文票」が構成され、選択可能となっている(表示部1422)。次回から、プロパティ情報選択部1402を用いて、プロパティ情報名「調達課 注文票」を指定すると、ドライバに記憶された先ほど設定したパラメータが呼び出され、当該パラメータを適用して、印刷処理を行うことができる。
【0036】
図17は、プロパティ情報編集画面を示す図である。この画面では、プロパティ情報指示部1701で、削除したいプロティ情報の名称を選択状態とし、削除ボタン1711を押すと、当該プロパティ情報を削除することができる。また、同様に、選択したプロパティ情報を、ファイル保存指示部1706を押すことにより、外部ファイルに出力することができる。また、ファイル読み込みボタン1705を押し、所望の外部ファイル(不図示)を選択することで、印刷パラメータを定義した外部のファイルから印刷に関するパラメータを読み込んでプロパティ情報として新たに定義等することができる。
【0037】
図18は、管理者がインストールサーバ装置においてプロパティ情報を登録する処理の一例を示すフローチャートである。管理者は、図14に示したドライバの設定画面で格納したい印刷処理に関するパラメータを指示選択する(S1801)。
【0038】
そして、プロパティ情報追加指示部1403を押下(S1802)し、図15に示したプロパティ情報追加画面を表示する。プロパティ情報追加画面で、プロパティ情報の名称1501、アイコン1502、コメント1503を入力して(S1803)、プロパティ情報の登録指示である画面切り換えボタン1507のOKボタンを押下し(S1804)、ドライバにプロパティ情報を登録する(図14のドライバの設定画面に戻る)。
【0039】
図14のドライバの設定画面でプロパティ情報編集部1404を押すと(S1805)、図17に示したプロパティ情報編集画面になる。そして、管理者がファイル保存指示部1706を押下すると、ドライバはプロパティ情報を外部ファイルとして自動的に所定のディレクトリに出力する(S1806)。以後、このプロパティ情報の外部出力されたファイルを外部ファイルという。
【0040】
管理者は、設定したいクライアントごと、或いは、同じクライアントに設定された異なるプリンタごとにプロパティ情報を一つ又は複数作成する。これらの一つ又は複数のファイルを所定のディレクトリに作成する。外部ファイルは、クライアント装置名やプリンタ名等に関連付けた外部ファイル名にすると好適である。これらの外部ファイルを他の情報処理装置に送信して、ドライバに読み込ませたり、OSに登録したりして設定情報を活用する。
【0041】
図5は、ネットワーク上のPC及び周辺機器を表示した画面の一例を示す図である。301はメニュー、302はツールバー、303はPC及び周辺機器を表すアイコンが表示されるメインウインドウである。302a〜302iは、ツールバー302においてPC及び周辺機器を操作して行う各機能を表すアイコンである。例えば、302aは選択されたスキャナから画像データの読み込み、該画像データを選択されたプリンタに出力するコピー機能を実行するためのアイコンである。302bはFAX機能、302cは画像データ読み込み機能、302dは画像データを読み込み、OCR処理を行う機能、302eはFAX受信データ及び配信データを管理する機能、302fは表示切り替え機能、302gは表示画面編集機能、302hは情報の更新処理を行う機能、302iは更新処理を中止する機能を実行するためのアイコンである。
【0042】
303a〜303qはネットワーク上で共有されているPC及び周辺機器を表すアイコンである。これらのアイコン303a〜303qは、PC、プリンタ、スキャナ、FAXモデムといったデバイス種類、或いは「処理中」、「エラー発生」等のステータスによってアイコンが変更されて表示される。303cは自機を表すアイコン、303bは自機がログオンしているドメインを表すアイコンである。自機は特別な機器であるために、他のPCとは区別して先頭に表示される。その他のPCについては、アルファベット順に昇順或いは降順で表示される。
【0043】
また、アイコン303pのようにネットワーク上では共有されているが、ドライバがインストールされていないPC及び周辺機器はアイコンがグレー表示される。また、アイコン303jのように接続機器があるが展開して表示されていない場合には「+」マークが、アイコン303h、303k、303nのように展開されている場合には「−」マークが表示される。アイコン303qのように接続機器が何もない場合はマークが付加されない。
【0044】
このように該画面でネットワーク上の全てのPC及び周辺機器の接続状態、さらにはステータスを確認することができる。この例では、画面の都合上、全てのアイコンが表示されていないが、画面横に配置されているスクロールバーを使って全てのPC及び周辺機器を確認することができる。
【0045】
また、図6は、ネットワーク上の各PCのドライバセットアップ状況を表示する画面の一例を示す図であり、各PCから取得したドライバ情報構造体を基に表示される。同図では、「私のPC」にインストールされているドライバは、プリンタが6個、スキャナが2個ある。この中で、例えば、「INKJET-10V」というプリンタは、ドライバ名が「INKJET-10V」で、バージョン番号が「1.00.00」で、プロパティ情報が「標準設定」で、「INKJET-10V」という名称で共有設定されたネットワーク上で共有されているプリンタドライバであることを示している。
【0046】
図2のフローチャートに説明を戻すと、ステップS204で、サーバ装置内のインストーラを含むセットアッププログラムは、プロパティ情報が要求されたか否かを判定する。ここで、プロパティ情報が要求されていない場合は、処理を終了する。プロパティ情報が要求されたとサーバ装置内のセットアッププログラムが判定した場合、ステップS205に移行する。プロパティ情報の要求方法としては、各デバイス上でマウス操作によりメニュー表示させて対応するドライバのプロパティ情報をサーバに要求することが考えられる。
【0047】
次に、ステップS205で、サーバ装置内のセットアッププログラムは、要求されたドライバのプロパティ情報があるか否かを判定する。そして、サーバ装置内のセットアッププログラムは、プロパティ情報がなかった場合は、対応するプロパティ情報がないことを通知して処理を終了する。サーバ装置内のセットアッププログラムは、対応するプロパティ情報があった場合、ステップS206に移行する。同じデバイスであってもバージョンによってサポートしている機能が異なる場合があるので、ドライバのプロパティ情報の有無は、デバイス種類、ドライバ名、バージョン情報を基に行うことが考えられる。それら全ての情報が一致しているかどうかを比較することで判定する。
【0048】
ステップS206では、要求があったPCに対して対応するプロパティ情報一覧を送信する。ここで、全ての情報を要求があったPCに送信するのではなく、ユーザが選択するために必要な最低限の情報を送信することによって、ネットワーク上のトラフィックを軽減させることができる。
【0049】
さらに、ステップS207では、サーバ装置内のセットアッププログラムは、そのPCからプロパティ情報の要求があったか否かを判定する。要求がない場合は、処理を終了する。要求があった場合、ステップS208に移行し、サーバ装置内のセットアッププログラムは、要求があったドライバのプロパティ情報の送信をサーバ装置内のOSに依頼して処理を終了する。
【0050】
一方、図7は、クライアント装置として機能するPCの処理動作を示すフローチャートである。まず、ステップS601で、サーバ装置からドライバのプロパティ情報を取得するか否かを判定する。ここで、取得しない場合は、処理を終了する。
【0051】
取得する場合、サーバ装置内のセットアッププログラムは、ステップS602に移行し、対応するドライバのプロパティ情報一覧をサーバ装置に要求する。要求する際には、デバイス種類、ドライバ名称、バージョン情報を送信する。
【0052】
ステップS603では、サーバ装置内のセットアッププログラムは、ドライバのプロパティ情報一覧を取得できたか否かを判定する。サーバ装置に対応するドライバのプロパティ情報がない等により取得できなかった場合は、処理を終了する。
【0053】
プロパティ情報一覧を取得できた場合、ステップS604に移行し、プロパティ情報を取得するか否かを判断する。ドライバのプロパティ情報を取得しない場合は、処理を終了する。
【0054】
ドライバのプロパティ情報を取得する場合、ステップS605に移行し、サーバ装置にプロパティ情報の取得要求を送信する。そして、ステップS606でプロパティ情報を取得できたかどうか判定する。取得できなかった場合は、ステップS605に戻り、取得できるまで待ち続ける。
【0055】
プロパティ情報を取得できた場合、ステップS607に移行し、取得したプロパティ情報を基に対応するドライバを更新する。
【0056】
(第2の実施の形態)
図2及び7に示したフローチャートでは、ドライバのプロパティ情報全てをサーバ装置で一元管理しているが、この場合には、サイズの大きい情報がネットワーク上でやり取りされることになる。そこで、トラフィックが増大するのを防ぐために、最低限の情報のみをサーバ装置に登録して管理し、プロパティ情報本体は各PCで管理して、プロパティ情報が必要な場合にはサーバ装置からの要求を受けて指定されたPCに送信する方法も考えられる。
【0057】
図8は、各クライアント装置で自機にインストールされているドライバのプロパティ情報を管理する場合におけるサーバ装置の処理動作、図9は、クライアント装置の処理動作を示すフローチャートである。図8のステップS1101乃至ステップS1107は、図2のフローチャートにおけるステップS201乃至ステップS207と同じである。
【0058】
ステップS1108では、ドライバのプロパティ情報を管理しているPCに対して、送信するデバイス種類、ドライバ名称、バージョン情報、プロパティ情報、及び送信するPC情報を送信して、指定されたPCにプロパティ情報を送信するように指示する。
【0059】
一方、図9に示すように、クライアント装置では、ステップS1201でサーバ装置からプロパティ情報の送信要求があるか否かを判定する。要求がない場合は、処理を終了する。
【0060】
送信要求があった場合、ステップS1202に移行し、指示されたドライバのプロパティ情報を管理データから読み出す。管理データの構造体としては、図3に示した構造体と同様の構造体が考えられる。そして、ステップ1203で、そのプロパティ情報を指示されたPCに送信する。
【0061】
(第3の実施の形態)
上述した第1、2の実施の形態では、クライアント装置からの要求があった場合について述べたが、サーバ装置から対応するクライアント装置へ操作を行うことも考えられる。図10、11は、その場合のサーバ装置及びクライアント装置の処理動作を示すフローチャートである。
【0062】
図10は、サーバ装置の処理動作を示すフローチャートであり、ステップS701〜S703までは、図2のフローチャートにおけるステップS201〜S203と同様である。
【0063】
ステップS704では、サーバ装置内のセットアップモジュールは、サーバ装置のプロパティ情報を更新するか否かを判断する。更新指示がなかった場合は、処理を終了する。更新指示があった場合、ステップS705に移行する。ここでの操作方法としては、例えば、あるドライバを選択して、プロパティ情報の更新・セットアップ指示をすることが考えられる。更新・セットアップ指示は、Remote Precedure Call(遠隔手続き呼出し、以下「RPC」と呼ぶ。)やこれをオブジェクト指向を用いてXMLにより実装した一例であるSOAP(シンプル・オブジェクト・アクセス・プロトコル)を用いて実現すると好適である。例えば、サーバ装置からの更新指示の一例としては、クライアント装置の更新処理モジュールを遠隔的に呼び出すRPCが挙げられる。なお、SOAPに限らず、例えばHTTPを用いて、ドライバや装置情報をやり取りできる仕組みを提供する別の仕組みも提供し得る。
【0064】
ステップS705では、ステップS702で取得した情報を基に、指示されたドライバがインストールされているクライアント装置があるか否かを認識する。
そして、対応するPCの電源が落ちている、或いは、ドライバを削除してしまっている等の理由で対応するクライアント装置がなかった場合は、処理を終了する。対応するPCがあった場合、それらのPCが表示される。図12は、対応するPCがあった場合の画面の一例を示す図であり、ここで、プロパティ情報を更新するPCを選択する。
【0065】
ステップS706では、サーバ装置内のセットアップモジュールは、更新指示がされたPCに対してプロパティ情報の更新通知を送信するようOSを制御する。そして、ステップS707で、サーバ装置内のセットアップモジュールは、各クライアント装置からプロパティ情報の送信要求があるか否かを判断する。
【0066】
送信要求がなかった場合は、ステップS709に移行する。送信要求があった場合、ステップS708に移行し、サーバ装置内のセットアップモジュールは、指定されたプロパティ情報を要求のあったPCに対して送信するようOSを制御する命令を生成する。ここで、プロパティ情報とは、所定のデータ形式で記述されたファイルである。ドライバが搭載されたクライアントPCにおいて、ユーザがドライバに指示することにより該プロパティ情報を入力したり出力したりすることができる。
【0067】
ステップS709では、サーバ装置内のセットアップモジュールは、更新通知を行った全PCから応答があったか否かを判断する。ここで、全てのPCから応答があった場合は、処理を終了する。全てのPCから応答がなかった場合、ステップS708に戻り、処理を続行する。
【0068】
一方、図11は、クライアント装置の処理動作を示すフローチャートである。
まず、ステップS901で、サーバ装置からプロパティ情報の更新通知を受けたか否かを判断する。通知がなかった場合は、処理を終了する。
【0069】
通知があった場合、ステップS902に移行し、プロパティ情報を更新するか否かを判断する。図13は、その場合に表示されるメッセージの一例を示す図である。ここで、「いいえ」を選択して更新をキャンセルする場合は、サーバ装置に対して更新しないことを送信して処理を終了する。「はい」が選択されて更新をする場合、ステップS903に移行し、サーバに対してプロパティ情報の送信要求を行って、ステップS904に移行する。
【0070】
ステップS904では、クライアント装置内のセットアップモジュールは、サーバ装置からプロパティ情報並びにセットアップ情報を取得できたか否かを判断する。取得できていない場合は、ステップS903に戻り、取得できるまで待ち続ける。プロパティ情報並びにセットアップ情報を取得できた場合、ステップS905に移行し、取得した情報を基にして指定したドライバのプロパティ情報を、セットアップ情報に含まれるセットアップ指示に従って、プロパティ情報を更新し、設定する。
【0071】
ここで、セットアップ指示は、例えば、クライアント装置内のセットアップモジュールが、クライアント装置内のOSのAPIを呼び出し、受信したプロパティ情報をOSのレジストリ領域に登録する処理を制御するものである。また、セットアップ指示は、ドライバセットアップモジュールにドライバにプロパティ情報を読み込むように指示する命令を発行する処理を制御するものであってもよい。
【0072】
なお、この例では、ステップS902において確認メッセージを表示していたが、メッセージを表示することなく自動的に更新処理を行ってもよい。
【0073】
以上述べたように本実施の形態では、ネットワーク上で共有されているPC及び周辺機器がウインドウに表示されるとともに、周辺機器のドライバのプロパティ情報をネットワーク上で共有するので、簡単な操作でドライバのプロパティ情報を更新することができる。また、サーバ装置から各クライアント装置に対して共通のプロパティ情報を設定することができる。さらに、プロパティ情報の管理をクライアント装置に分散させ、必要に応じて情報をやり取りすることにより、ネットワーク上のトラフィックを最小限に抑えることも可能となる。
【0074】
(第4の実施の形態)
上記第3の実施形態においては、ドライバのプロパティ情報の設定又は更新について述べたが、本実施の形態については、サーバ装置側が、クライアント装置のドライバを新規追加又は更新する際、能動的に、クライアント装置からの要求待つことなくドライバを配信する場合の処理である。本実施形態では、前述の実施形態と異なる部分を説明する。
【0075】
インストールサーバ装置内のセットアッププログラムは、クライアント装置からのドライバ送信要求を待つことなく、OSのAPI又はシステムコールを呼び出し、ドライバのセットアップ指示、並びに、ドライバを配信する処理の制御を行う。そして、セットアッププログラムは、並行して、クライアント装置に対して送信するドライバのプロパティ情報を、インストールサーバ装置から自発的に、或いは、ドライバがインストールされた後のクライアント装置の要求を待って送信するようOSを制御する。
【0076】
図20は、本実施の形態を示す印刷システムの一例を示す図である。クライアントの好適な一例であるクライアント装置A381、クライアント装置B382、クライアント装置C383、サーバ装置の好適な一例であるインストールサーバ装置385、ファイルサーバ装置386がネットワークの好適な一例であるLAN(ローカルエリアネットワーク)360を介して接続されている。本実施の形態のインストールサーバ装置385、ファイルサーバ386は、クライアント装置である381乃至383は情報処理装置の好適な一例であるPCで構成されており、その内部構造は図1と同様である。
【0077】
図23は、各クライアント装置内の好適な一例としてのソフトウェアのモジュールを示す図である。図23を用いて、ドライバのクライアントにおけるインストール処理の例を説明する。クライアント装置には、OSが搭載されている。各クライアント装置内のソフトウェアモジュールの領域は、ユーザ領域377とOS領域378に分割されている。
【0078】
ドライバインストールモジュール371は、OS上で動作するアプリケーションとして用意される。システムプログラム379は、クライアント装置内に記憶されているドライバ名、プリンタ名、ドライバのシステム内のディレクトリをレジストリ376に登録することにより管理している。
【0079】
ドライバインストールモジュール371は、API(アプリケーションプログラミングインタフェース)を介して、システムインストーラ374を呼び出す。システムインストーラ374は、OSの一機能として用意されており、ドライバインストールモジュール371の命令に応答して、外部から導入してユーザ領域377に記憶されているドライバ372をシステムファイル領域375に複写或いは移動する。このシステムファイル領域375の一部は、ドライバを使用するデバイスの各種情報を登録するためのレジストリ領域376が確保されている。また、ドライバインストーラモジュール371は、システムインストーラ374を呼び出して、ドライバセットアップ情報並びにプロパティ情報をレジストリ領域に格納させることができる。レジストリはユーザ毎に用意してもよい。
【0080】
ここでは、ドライバインストールモジュール371は、外部装置から受信したセットアップ指示に従って、プロパティ情報をレジストリ376に登録するためのOSのAPIを呼び出したり、或いは、システムファイルにインストールされたドライバを呼び出してプロパティ情報を読み込ませたりする処理を行う。ドライバのプロパティ情報は、例えば、クライアント装置のOSに登録されているプリンタごとに、お気に入りの印刷設定をプロパティ情報としてOSのレジストリ領域に格納することもできる。
【0081】
ドライバのプロパティ情報は、図14で説明した外部ファイルの形式でインストールサーバ装置から受信され、ユーザ領域377のファイルシステムに読み込まれることも考え得る。この場合、ファイル形式のドライバプロパティ情報をドライバインストーラが自動的に読み込んで、ドライバに渡し、ドライバの設定にドライバプロパティ情報を反映させることができる。
【0082】
図19は、インストールサーバ装置がドライバをクライアント装置に配布し、プロパティ情報を設定する処理の一例を示す図である。ドライバのプロパティ情報は、本実施の形態では、図14を用いて先に説明したように、インストールサーバ装置において管理者が入力した情報を外部ファイルとして出力したものを用いる。この処理は、インストールサーバ装置385に搭載されたリモートインストール機能を有するセットアッププログラムが起動された場合に開始される。図19の処理においては、インストールサーバ装置385内のセットアッププログラムは、クライアント装置からの要求待つことなく、プッシュインストールでドライバの配信を行っている。
【0083】
また、インストールサーバ装置385内のセットアッププログラム(管理手段)は、プロパティ情報をOSに登録される印刷装置ごとに管理しており、当該プリンタの機種毎の機能やオプションに適合したプロパティ情報を配信するようにOSを制御してプロパティ情報の配信処理を行うことも考え得る。
【0084】
なお、インストールサーバ装置からドライバ並びにセットアップ情報をネットワークを介して受信した各クライアント装置のOSは、当該ドライバのプロパティ情報と、プロパティ情報のセットアップ指示をドライバインストーラ(入力手段)に入力する。
【0085】
このセットアップ指示に基づいて、該インストーラは、クライアント装置内のドライバがこのプロパティ情報を認識できるように、このプロパティ情報をクライアント装置内のOSにインストールする。例えば、セットアップ指示の命令を受けて、ドライバインストーラは、OSから入力されたプロパティ情報を、ドライバに入力して読み込ませることによりドライバに認識させる。また、セットアップ指示を受けて、ドライバインストーラは、OSのAPIを呼び出して、プロパティ情報をOSのレジストリに登録し、ドライバは、OSを介してプロパティ情報を認識する。
【0086】
以下、インストールサーバ装置385におけるインストーラの動作を示す。以下、クライアント装置A、クライアント装置B,クライアント装置Cをまとめて「各クライアント装置」と呼ぶ。
【0087】
図19の処理に説明を戻す。まず、インストールサーバ装置385内のセットアッププログラムは、ステップS1901でドライバを各クライアント装置にリモートインストールする指示があったかどうか判定する。リモートインストールの指示は、例えば、ユーザが、図20におけるインストールサーバ装置385のCRT16に表示されるグラフィカルユーザインタフェースを参照して、マウス13やキーボード12を操作すると、当該操作に応答してセットアップ指示が入力制御部11に入力される。ここで、インストールサーバ装置385内のセットアッププログラムは、リモートインストールの指示がないと判断した場合は、処理を終了する。
【0088】
一方、S1901でインストールサーバ装置385内のセットアッププログラムがリモートインストールの指示があったと判断した場合は、ステップS1902に進んでリモートインストールするドライバのセットアップ情報を作成する。ドライバのセットアップ情報とは、インストールするドライバ名プリンタ名、出力ポート名、ポートを利用可能とするためのモジュール等の情報を含む。また、プリンタ名は、ここでは、各クライアント装置のOSのレジストリ等に登録され管理されるものである。
【0089】
ここで、図21を用いてステップS1902の処理を詳述する。図21はインストールサーバ装置のCRTに表示されるセットアップ情報を設定する画面の一例である。管理者は、この設定画面を用いて、セットアップ指示を含むセットアップ情報を作成する。331はプリンタ名指示部である。プリンタ名指示部331では各クライアント装置に登録するためのプリンタ名を選択又は入力可能である。ネットワーク上で検索された複数のプリンタをプリンタ名指示部331で指示できるようにしてもよい。
【0090】
332はポート指定部である。ポート指定部では、334ポートの追加指示部をマウスを用いて押下することにより、ポートを追加できる。
【0091】
図21の設定例では、プリンタのネットワーク上の所在を示す情報としてのIPアドレスと、プリンティングプロトコルとして、lprを用いる旨を指定し、これらに対応付けられる論理的なポートが作成されている様子を示している。lprは、伝統的な印刷管理プログラムであるが、もちろん、他の印刷管理プログラムを用いてもよい。また、TCP/IPとは別のネットワークプロトコルを用いてもよい。
【0092】
333はドライバの指定部であり、各クライアント装置にインストールするためのドライバを指示するためのものである。ドライバの追加指示部335を操作することにより、ドライバ指定できる。
【0093】
上記は、TCP/IPとlprを用いたネットワークプリンタに対して印刷処理させる場合のポート作成の例であった。ポートは、ローカルプリンタに対しても作成することができる。例えば、クライアント装置のローカルプリンタを設定する場合には、COMポートやLPDポートを指定し、これに基づきセットアップ情報を作成してもよい。また、ポートとして、プリントサーバ装置経由での印刷を示す設定も可能である。例えば、プリントサーバ装置387のプリントサーバ名が「SVPC1」であり、プリンタ384のプリンタ名がLASER950である場合、「\\SVPC1\LASER950」とポートを指定すれば、SVPC1をプリントサーバとしてLASER950に印刷を行わせるためのポートが設定される。
【0094】
図21の画面のOKボタン336を押すと図22が表示され、ステップS1903並びにステップS1904に移行する。
【0095】
ステップS1903では、後述する図22の設定画面で、インストールサーバ装置385内のセットアッププログラムは、選択したドライバをインストールするクライアント装置を選択する。同時に配布先の複数のクライアント装置を選択することも可能である。
【0096】
図22は、図19の処理で用いられるドライバをセットアップするクライアント装置とプロパティ情報の設定を指示する画面の一例である。同時に複数のクライアント装置を選択することも可能である。また、プロパティ情報配信設定部221により、プロパティ情報の設定処理実行のON/OFFも設定できる。プロパティ情報ファイル選択部222を用いて、図17の設定画面を用いて作成した、各クライアント装置に配信したいプロパティ情報ファイルを選択する。図22では、プロパティ情報Aが選択された状態となっている。また、この例ではドメイン内の一台又は複数のクライアント装置を選択するようになっているが、同一ドメインを跨いだ指定も可能である。
【0097】
ステップS1904では、インストールサーバ装置385内のセットアッププログラムは、プロパティ情報配信設定部221からの入力に基づいてプロパティ情報を配信するか否かの指定を行い、さらに、プロパティ情報ファイル選択部222からの入力に基づいて配信するプロパティ情報名の指定を行う。
【0098】
ステップS1905では、インストールサーバ装置385内のセットアッププログラムは、各クライアント装置上でドライバのインストールが終了した際にドライバのプロパティ情報の設定処理を実行するようセットアッププログラムが設定されているかどうかを判断する。インストールサーバ装置385内のセットアッププログラムは、ドライバのプロパティ情報をクライアントにおいて設定処理を行うよう設定されていないと判断した場合はステップS1907の処理を行う。ここで、プロパティ情報の設定処理のクライアントにおけるプロパティ情報の設定処理を実行するよう設定されている場合は、ステップS1906に移行する。
【0099】
ステップS1906ではインストールサーバ装置385内のセットアッププログラムは、プロパティ情報を含むS1904で指定されたプロパティ情報名に対応する外部ファイルを自動的に読み込む。ここで、外部出力ファイルは管理者により作成され、ステップS1904で指定したファイルが保存されているインストールサーバ装置385内のディレクトリから自動的に読み込み、プロパティ情報の本体並びに配信すべきプロパティ情報をセットアップ情報として追加記憶させ、セットアップ情報をクライアントに配信させる指示をOSに対して発行する。
【0100】
そして、ステップS1907では、サーバ装置385内のセットアッププログラム(認識手段)は、上述した工程で設定・認識された、セットアップ指示を含むドライバのセットアップ情報、並びに、インストールすべきドライバを認識する。上述した工程で設定・認識された、セットアップ指示を含むドライバのセットアップ情報とは、ステップS1905においてYesであれば、ステップS1906においてプロパティ情報が追加されたセットアップ情報を、ステップS1905においてNoであれば、当該プロパティ情報を含まないセットアップ情報である。さらに、当該セットアッププログラムは、ステップS1903で指示された一台又は複数のドライバをインストールするクライアント装置を判断して認識し、判断されたクライアント装置に配信するようAPIを介してOSに命令し、処理を終了する。なお、インストールサーバ装置385は、プロパティ情報をインストールサーバ装置385において、ドライバインストール開始の指示入力に応答して配信処理を開始するようにすると好適である。
【0101】
図19に示す処理においては、OSの種類やOSのバージョンについては、インストールサーバ装置385が、予め収集してインストールサーバ装置385内に記憶した各クライアント装置の情報に基づいて、自動判定を行っている。しかし、各クライアント装置に搭載されているOSの自動判定が出来ない場合、セットアッププログラムがステップS1902でセットアップ情報を生成する前に、ユーザがOSの種類やバージョン、図21に示すグラフィカルユーザインタフェースをOSの種類やCPUのアーキテクチャを指定できるように変更してもよい。
【0102】
また、図19に示す処理においては、プロパティ情報をサーバからの要求を待つことなく、能動的に配信処理しているが、インストールサーバ装置385は、各クライアント装置からのプロパティ情報の送信要求に応答して、プロパティ情報を送信してもよい。
【0103】
プロパティ情報は、ドライバにより外部ファイルとして出力され、インストールサーバ装置385から配信して各クライアント装置において用いる。各クライアント装置は、各クライアント装置外のインストールサーバ装置385から取得した前記外部ファイルからプロパティ情報を自動的に読み出し、前記読み出したプロパティ情報を各クライアント装置内のドライバに入力して読み込ませる。
【0104】
(その他の実施の形態)
上述した実施の形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置或いはシステム内のコンピュータに対し、上記実施の形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステム或いは装置のコンピュータ(CPU或いはMPU)に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【0105】
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0106】
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施の形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)或いは他のアプリケーションソフト等と共同して上述の実施の形態の機能が実現される場合にもかかるプログラムコードは本発明の実施の形態に含まれることはいうまでもない。
【0107】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合にも本発明に含まれることはいうまでもない。
【0108】
なお、上記実施の形態において示した各部の形状及び構造は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【0109】
【発明の効果】
以上説明したように本発明によれば、ドライバのプロパティ情報をネットワーク上で共有することができるので、簡単な操作でドライバのプロパティ情報を更新することができる。また、サーバ装置から各クライアント装置に対して共通のプロパティ情報を設定することができる。
【0110】
また、クライアントに導入されているドライバにおいて、サーバ装置から該ドライバのプロパティ情報を配信してクライアント装置に設定するので、ドライバのプロパティ情報の設定の労力を軽減し、設定ミスを削減することができる。
【0111】
さらに、サーバ装置からプッシュインストールを行い、プロパティ情報のセットアップを行う旨が指示されている場合は、当該ドライバに対するプロパティ情報の設定処理を行うので、各クライアントにおいて行われていたドライバのインストール並びにプロパティ情報の設定処理の負担を軽減することができる。
【図面の簡単な説明】
【図1】 本実施の形態の装置の概略構成を示すブロック図である。
【図2】 サーバ装置として機能するPCの処理動作を示すフローチャートである。
【図3】 ドライバ情報構造体の一例を示す図である。
【図4】 プロパティ情報構造体の一例を示す図である。
【図5】 ネットワーク上のPC及び周辺機器を表示する画面の一例を示す図である。
【図6】 ネットワーク上の各PCのドライバセットアップ状況を表示する画面の一例を示す図である。
【図7】 クライアント装置として機能するPCの処理動作を示すフローチャートである。
【図8】 サーバ装置の処理動作を示すフローチャートである。
【図9】 クライアント装置の処理動作を示すフローチャートである。
【図10】 サーバ装置の処理動作を示すフローチャートである。
【図11】 クライアント装置の処理動作を示すフローチャートである。
【図12】 プロパティ情報を更新するPCを選択するための画面の一例を示す図である。
【図13】 プロパティ情報の更新通知を受けた場合に表示される画面の一例を示す図である。
【図14】 ドライバのプロパティ情報の設定画面の一例を示す図である。
【図15】 プロパティ情報追加画面の一例を示す図である。
【図16】プロパティ情報設定画面の一例を示す図である。
【図17】 プロパティ情報編集画面の一例を示す図である。
【図18】 管理者がインストールサーバ装置においてプロパティ情報を登録する処理の一例を示す図である。
【図19】 インストールサーバ装置がドライバをクライアント装置に配布し、プロパティ情報を設定する処理の一例を示す図である。
【図20】 本実施形態を示す印刷システムの一例を示す図である。
【図21】インストールサーバ装置のCRTに表示されるセットアップ情報を設定する画面の一例を示す図である。
【図22】 図19の処理で用いられるドライバをセットアップするクライアント装置とプロパティ情報の設定を指示する画面の一例を示す図である。
【図23】 各クライアント装置内の好適な一例としてのソフトウェアのモジュールを示す図である。
【符号の説明】
1 システムバス
2 CPU
3 プログラムメモリ
4 通信制御部
5 通信ポート
6 通信回線
7 ネットワーク上の他の装置
8 外部記憶装置制御部
9 フレキシブルディスク
10 ハードディスク
11 入力制御部
12 キーボード
13 マウス
14 ビデオイメージメモリ
15 表示出力制御部
16 CRT
17 プリンタ制御部
18 プリンタ
1A 画像読み取り装置制御部
1B 画像読み取り機器
381 クライアント装置
382 クライアント装置
383 クライアント装置
384 プリンタ
385 インストールサーバ装置
386 ファイルサーバ装置
387 プリントサーバ装置
[0001]
BACKGROUND OF THE INVENTION
The present invention , Information processing apparatus and method as well as Control program In In particular, the present invention relates to display and management of PCs and peripheral devices shared on a network.
[0002]
[Prior art]
In recent years, with the spread of peripheral devices such as personal computers (hereinafter referred to as PCs), printers, scanners, digital cameras and the like, networks such as LANs have also spread, and printers, modems, scanners, etc. by a plurality of PCs on the network. The need to share is also increasing. Many drivers for using these peripheral devices have also been provided, and installation methods have also been provided.
[0003]
[Problems to be solved by the invention]
However, when the driver of the peripheral device is upgraded due to a function upgrade or the like, the user himself has to upgrade the driver. When the user upgrades the driver himself / herself, the new driver information is stored in a specific folder of a PC (server PC, etc.) shared on the network, and the driver information is used on each PC to upgrade the driver. It was common to upgrade each version.
[0004]
However, when the version is upgraded by these methods, there are the following problems. That is, user information set as property information for each driver, such as layout information and font information, or device option information set in common in the network system, is set to the initial state of the driver. It is a problem. For this reason, after all, it is necessary to set the property information of the driver that returns to the initial state at the time of installation. For these reasons, not only is it troublesome to set the driver property information after installing the driver, but the items for setting them are becoming more complex, which can lead to setting errors, etc. There is a problem.
[0005]
Therefore, it is conceivable to upgrade the driver automatically in the future. For example, the system administrator upgrades the drivers on a plurality of PCs at a time by issuing instructions from the server PC or the like. The upgrade can be performed without the user being aware of the folder in which new driver information is stored on each PC.
[0006]
However, driver installation, version upgrade, and setup procedures vary from device to device. In addition, the type of driver must be selected according to the environment of the device or client device, and the operation is complicated. In addition, complicated processing such as addition and change of drivers based on instructions in the client device and setting of driver property information must be executed in each client, and there is a problem that work efficiency is very poor.
[0007]
As described above, when the user of each PC or the setting of software of the PC is left to the system administrator, there is a problem that the system administrator is loaded and the work efficiency is deteriorated. Furthermore, in recent years, there are many cases where installation is performed on a large number of PCs in a large-scale system. After installing drivers for a large number of PCs, it becomes necessary to set complicated driver properties on a large number of PCs. Under such circumstances, there is a problem that the user's labor and a system administrator for setting a large number of PCs are required, and setting errors often occur.
[0008]
The present invention has been made in view of the above points, and an object thereof is to provide a mechanism that enables property information to be updated by a simple operation on a network.
[0009]
In addition, when upgrading the version of a driver installed in the client, the driver property information is distributed from the server device and set in the client device in order to reduce the setting effort of the driver property information and reduce setting errors. The purpose is to provide a mechanism to do this.
[0010]
Furthermore, in order to reduce the burden of driver installation and property information setting processing that has been performed in each client, a mechanism for performing push installation of the driver according to a setup instruction from the server device and performing property information setting processing for the driver The purpose is to provide.
[0011]
[Means for Solving the Problems]
Of the present invention An information processing apparatus is an information processing apparatus that communicates with a client apparatus. Concerned A program for controlling a peripheral device using a user interface displayed on a display unit of an information processing device driver Select multiple client devices to deliver Ru A selection means; Concerned Using the user interface displayed on the display unit of the information processing device, Specify whether or not to deliver the driver property information, and if so, specify the property information to be delivered Make Specified Means, When it is specified that distribution of property information is specified by the specifying means, the property information of the driver specified by the specifying means for the plurality of client devices selected by the selecting means, and the When the driver and the driver setup instruction are distributed and the property information is not distributed by the specifying unit, the driver is sent to the plurality of client devices selected by the selecting unit. And instructions for setting up the driver And a delivery control means for controlling.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of a network system, an information processing apparatus, a method, a control program, and a computer-readable storage medium according to the present invention will be described with reference to the drawings.
[0014]
FIG. 1 is a block diagram illustrating a schematic configuration of an apparatus according to the present embodiment. In FIG. 1, reference numeral 1 denotes a system bus, and the following constituent blocks are connected via the system bus 1.
[0015]
Reference numeral 2 denotes a CPU (Central Processing Unit). Reference numeral 3 denotes a program memory (hereinafter referred to as PMEM). A program for processing to be described later is appropriately selected / read from the hard disk 10 and executed by the CPU 2. Data input from the keyboard 12 is stored as code information in the PMEM which is also a text memory.
[0016]
A communication control unit 4 controls input / output data in the communication port 5. A signal output from the communication port 5 is transmitted via a communication line 6 to a communication port of another device on the network (reference numeral 7 in FIG. 1). Exchanges with printers, scanners, etc. shared on the network are performed via this communication control unit 4. Although the present embodiment describes a network such as a LAN, it goes without saying that the present invention is applicable even if the communication port 5 and the communication line 6 connected to the communication control unit 4 are general public lines. .
[0017]
Reference numeral 8 denotes an external storage device control unit. 9 and 10 are data file disks, for example, 9 is a flexible disk FD, and 10 is a hard disk HD.
[0018]
An input control unit 11 is connected to input devices such as a keyboard 12 and a mouse 13. The user can issue a system operation command by operating the keyboard 12. In addition, the mouse 13 functions as a pointing device PD for instructing to process image information on the CRT 16, and thereby the cursor on the CRT 16 is arbitrarily moved in the X and Y directions to select a command icon on the command menu. In addition to instructing processing, it is also possible to instruct editing targets, instruct drawing positions, and the like.
[0019]
14 is a video image memory (VRAM), 15 is a display output control unit, and 16 is a CRT (Cathode-Ray Tube). Data displayed on the CRT 16 is expanded as bitmap data on the VRAM 14.
[0020]
Reference numeral 17 denotes a printer control unit which controls data output to the connected printer 18. Reference numeral 1A denotes an image reading device control unit that controls the connected image reading device 1B.
[0021]
Note that the program stored in the PMEM 3 in the present embodiment may be stored in a storage medium such as the hard disk 10 or the flexible disk 9. Furthermore, it may be stored on another device connected to the network.
[0022]
(First embodiment)
The first embodiment will be described below with reference to FIGS. FIG. 2 is a flowchart showing the processing operation of the PC functioning as the server apparatus. First, in step S201, the server apparatus acquires connection information of all PCs and peripheral devices on the network and stores the information.
[0023]
Next, in step S202, the server apparatus performs peripheral devices in each PC. of Get driver setup information. The peripheral device driver is a driver of a printer, a scanner, a digital camera, a FAX, or the like. As a method for acquiring setup information, for example, it is installed on each PC setup It is conceivable that information is collected by activating a module that acquires information, and the information is transmitted and received through a network. In step S203, the server apparatus displays connection information of all PCs and peripheral devices on the network based on the acquired information. Below, As setup information An embodiment using a driver information structure will be described.
[0024]
Figure 3 , It is a figure which shows an example of a driver information structure. PC name, IP address, OS (operating system) type, user name, number of device drivers, information on each device driver, Driver information that is the device driver itself as well as Device driver Consists of property information. Each device driver of The information includes device types such as printers and scanners, driver names, version information, output ports, shared names, driver information addresses, property information names, and property information addresses. For example, the first registered printer has driver name LASER-830, version 1.00.00, output port local, shared name LASER-830, driver information address 0x10000, property information name set as standard, The property information address is 0x50000. This information is recorded for each PC.
[0025]
FIG. 4 is a diagram illustrating an example of a property information structure. This example is property information of the printer driver. In the present embodiment, an example in which page settings, finishing settings, paper feed settings, and print quality settings are set is shown. The property information includes information that is referred to by the driver module when performing print processing. This structure differs depending on the driver type and version. Property information can also be held in the OS registry. It is also possible to input information to the driver and output the input information as external information of property information, for example, an external file, by the driver.
[0026]
Here, FIG. Property information It is a figure which shows a setting screen. Hereinafter, generation of property information by the driver and external file output processing which is a suitable example of external information will be described. Displayed on the CRT of the server apparatus, the user operates a GUI (graphical user interface) on the screen using a pointing device or a keyboard.
[0027]
In the property information, finishing processing represented by the presence or absence of stapling, print quality, paper feed information for operating the device, and the like can be set. Here, as an example, the property information selection tab 1401 is in a state where the page setting tab is selected. Reference numeral 1402 denotes a favorite selection unit for the user to select favorite property information.
[0028]
Reference numeral 1403 denotes a property information addition instruction unit. When the property information addition instruction unit 1403 is instructed, a property information addition screen appears as shown in FIG. Reference numeral 1404 denotes a property information editing unit. When the property information editing unit 1404 is instructed, a favorite editing screen appears as shown in FIG.
[0029]
Reference numerals 1406 to 1413 denote parameter instruction units for specifying parameters stored in the property information. Output paper size 1406, number of copies 1407, page layout 1409 such as print orientation 1408, 2in1, page layout arrangement order 1410, presence / absence of stamp 1412 including watermark printing embedded in print data, type of stamp 1411, presence / absence of stapling Device control information 1413 such as a sorting method (for example, face-up / face-down) can be designated.
[0030]
Reference numeral 1414 denotes a property information confirmation unit. When the property information confirmation unit 1414 is pressed, a screen (not shown) on which the content of the property information parameter can be confirmed is displayed.
[0031]
Reference numerals 1415 to 1421 denote user-defined papers, and 1416 denotes a selection unit for selecting page options, return to standard, OK, cancel, apply, and help.
[0032]
The administrator operates 1401 to 1421 to store the above parameters as property information in the driver of the server device.
[0033]
FIG. 15 is a diagram showing a property information addition screen. Reference numeral 1501 denotes a name input unit 1501 for inputting the name of property information. An icon designation unit 1502 designates an icon corresponding to property information. A comment input unit 1503 can input a comment related to the property information. Reference numeral 1504 denotes a property information display switching unit.
[0034]
Reference numeral 1506 denotes a property information display unit. Reference numeral 1507 denotes a screen switching button. When the user presses OK, parameters currently set in the driver (partially displayed in the property information display unit 1506) are registered as property information. In the example of FIG. 15, the property information is stored with the property information name “Procurement Division Order Form”. When the saving process is completed, the property information setting screen is displayed as shown in FIG.
[0035]
As shown in FIG. 16, “Procurement Section Order Form” is configured as property information and can be selected (display unit 1422). From the next time, when the property information selection unit 1402 is used to specify the property information name “Procurement Division Order Form”, the parameters set earlier in the driver are called, and the print processing is performed by applying the parameters. Can do.
[0036]
FIG. 17 shows a property information editing screen. On this screen, when the property information instruction unit 1701 selects the name of the property information to be deleted and presses the delete button 1711, the property information can be deleted. Similarly, the selected property information can be output to an external file by pressing the file save instruction unit 1706. Further, by pressing a file reading button 1705 and selecting a desired external file (not shown), printing parameters can be read from an external file in which printing parameters are defined and newly defined as property information.
[0037]
FIG. 18 is a flowchart illustrating an example of processing in which the administrator registers property information in the installation server device. The administrator designates and selects parameters relating to print processing to be stored on the driver setting screen shown in FIG. 14 (S1801).
[0038]
Then, the property information addition instruction unit 1403 is pressed (S1802), and the property information addition screen shown in FIG. 15 is displayed. On the property information addition screen, a property information name 1501, an icon 1502, and a comment 1503 are input (S1803), and an OK button of a screen switching button 1507 that is a property information registration instruction is pressed (S1804). Is registered (return to the driver setting screen of FIG. 14).
[0039]
When the property information editing unit 1404 is pressed on the driver setting screen shown in FIG. 14 (S1805), the property information editing screen shown in FIG. 17 is displayed. When the administrator presses the file save instruction unit 1706, the driver automatically outputs the property information as an external file to a predetermined directory (S1806). Hereinafter, the externally output file of this property information is referred to as an external file.
[0040]
The administrator creates one or more property information for each client to be set or for each different printer set for the same client. One or more of these files are created in a predetermined directory. The external file is preferably an external file name associated with the client device name, printer name, or the like. These external files are transmitted to another information processing apparatus and read by a driver or registered in the OS to utilize setting information.
[0041]
FIG. 5 is a diagram showing an example of a screen displaying PCs and peripheral devices on the network. Reference numeral 301 denotes a menu, 302 denotes a toolbar, and 303 denotes a main window on which icons representing PCs and peripheral devices are displayed. 302 a to 302 i are icons representing functions performed by operating the PC and peripheral devices on the toolbar 302. For example, 302a is an icon for executing a copy function for reading image data from a selected scanner and outputting the image data to a selected printer. 302b is a FAX function, 302c is an image data reading function, 302d is a function that reads image data and performs OCR processing, 302e is a function that manages FAX reception data and distribution data, 302f is a display switching function, and 302g is a display screen editing function. , 302h is a function for performing an information update process, and 302i is an icon for executing a function for canceling the update process.
[0042]
303a to 303q are icons representing PCs and peripheral devices shared on the network. These icons 303a to 303q are displayed with the icons changed depending on the device type such as PC, printer, scanner, FAX modem, or status such as “processing in progress” or “error occurrence”. 303c is an icon representing the own device, and 303b is an icon representing the domain to which the own device is logged on. Since the own device is a special device, it is displayed at the top in distinction from other PCs. Other PCs are displayed in ascending or descending order in alphabetical order.
[0043]
In addition, a PC and peripheral devices that are shared on the network like the icon 303p but have no driver installed are displayed in gray. In addition, a “+” mark is displayed when there is a connected device such as icon 303j but it is not expanded and displayed, and a “−” mark is displayed when it is expanded as icons 303h, 303k, and 303n. Is done. If there is no connected device like the icon 303q, no mark is added.
[0044]
In this way, it is possible to confirm the connection status and status of all PCs and peripheral devices on the network on the screen. In this example, not all icons are displayed for the convenience of the screen, but all PCs and peripheral devices can be confirmed using a scroll bar arranged on the side of the screen.
[0045]
FIG. 6 is a diagram showing an example of a screen that displays the driver setup status of each PC on the network, and is displayed based on the driver information structure acquired from each PC. In the figure, the drivers installed in “My PC” are six printers and two scanners. Of these, for example, a printer called “INKJET-10V” has a driver name of “INKJET-10V”, a version number of “1.00.00”, property information of “standard settings”, and “INKJET-10V” This indicates that the printer driver is shared on the network that is set to share by name.
[0046]
Returning to the flowchart of FIG. 2, in step S204, the setup program including the installer in the server apparatus determines whether property information is requested. Here, if the property information is not requested, the process is terminated. When the setup program in the server apparatus determines that the property information is requested, the process proceeds to step S205. As a method for requesting property information, it is conceivable to display a menu by operating the mouse on each device and request the property information of the corresponding driver from the server.
[0047]
In step S205, the setup program in the server device determines whether there is property information of the requested driver. Then, if there is no property information, the setup program in the server device notifies that there is no corresponding property information and ends the process. If there is corresponding property information, the setup program in the server apparatus proceeds to step S206. Even if the same device is used, supported functions may differ depending on the version. Therefore, the presence / absence of driver property information may be determined based on the device type, driver name, and version information. Judgment is made by comparing whether or not all the information matches.
[0048]
In step S206, a corresponding property information list is transmitted to the requested PC. Here, it is possible to reduce traffic on the network by transmitting the minimum information necessary for the user to select instead of transmitting all information to the requested PC.
[0049]
Further, in step S207, the setup program in the server apparatus determines whether or not there is a request for property information from the PC. If there is no request, the process is terminated. If there is a request, the process proceeds to step S208, and the setup program in the server apparatus requests the OS in the server apparatus to transmit the property information of the requested driver, and ends the process.
[0050]
On the other hand, FIG. 7 is a flowchart showing the processing operation of the PC functioning as the client device. First, in step S601, it is determined whether or not to acquire driver property information from the server apparatus. Here, when not acquiring, a process is complete | finished.
[0051]
In the case of acquisition, the setup program in the server apparatus moves to step S602 and requests the server apparatus for a list of property information of the corresponding driver. When requesting, the device type, driver name, and version information are transmitted.
[0052]
In step S603, the setup program in the server apparatus determines whether or not the driver property information list has been acquired. If the driver property information corresponding to the server device is not available, the processing is terminated.
[0053]
When the property information list can be acquired, the process proceeds to step S604, and it is determined whether or not the property information is acquired. If the driver property information is not acquired, the process ends.
[0054]
When acquiring the property information of the driver, the process proceeds to step S605, and a property information acquisition request is transmitted to the server device. In step S606, it is determined whether property information has been acquired. If it cannot be obtained, the process returns to step S605 and continues to wait until it can be obtained.
[0055]
If the property information can be acquired, the process proceeds to step S607, and the corresponding driver is updated based on the acquired property information.
[0056]
(Second Embodiment)
In the flowcharts shown in FIGS. 2 and 7, all of the driver property information is centrally managed by the server device. In this case, large-size information is exchanged on the network. Therefore, in order to prevent an increase in traffic, only minimum information is registered and managed in the server device, the property information body is managed by each PC, and when property information is required, a request from the server device A method of receiving and transmitting to a designated PC is also conceivable.
[0057]
FIG. 8 is a flowchart showing the processing operation of the server device when each client device manages the property information of the driver installed in the own device, and FIG. 9 is a flowchart showing the processing operation of the client device. Steps S1101 to S1107 in FIG. 8 are the same as steps S201 to S207 in the flowchart of FIG.
[0058]
In step S1108, the device type, driver name, version information, property information, and PC information to be transmitted are transmitted to the PC that manages the property information of the driver, and the property information is transmitted to the designated PC. Instruct to send.
[0059]
On the other hand, as shown in FIG. 9, the client device determines whether there is a property information transmission request from the server device in step S1201. If there is no request, the process is terminated.
[0060]
If there is a transmission request, the process proceeds to step S1202, and the property information of the instructed driver is read from the management data. As the structure of the management data, a structure similar to the structure shown in FIG. 3 can be considered. In step 1203, the property information is transmitted to the designated PC.
[0061]
(Third embodiment)
In the first and second embodiments described above, the case where there is a request from the client device has been described, but it is also conceivable to perform an operation from the server device to the corresponding client device. 10 and 11 are flowcharts showing processing operations of the server device and the client device in that case.
[0062]
FIG. 10 is a flowchart showing the processing operation of the server apparatus. Steps S701 to S703 are the same as steps S201 to S203 in the flowchart of FIG.
[0063]
In step S704, the setup module in the server device determines whether to update the property information of the server device. If there is no update instruction, the process ends. If there is an update instruction, the process proceeds to step S705. As an operation method here, for example, it is conceivable to select a certain driver and instruct update / setup of property information. The update / setup instruction is performed using Remote Precedure Call (Remote Procedure Call, hereinafter referred to as “RPC”) or SOAP (Simple Object Access Protocol), which is an example of an object-oriented implementation of XML. It is preferable to realize it. For example, as an example of the update instruction from the server device, there is RPC that remotely calls the update processing module of the client device. In addition, not only SOAP but another mechanism that provides a mechanism for exchanging driver and device information using, for example, HTTP may be provided.
[0064]
In step S705, based on the information acquired in step S702, it is recognized whether there is a client device in which the instructed driver is installed.
If there is no corresponding client device because the corresponding PC is turned off or the driver has been deleted, the processing is terminated. If there are corresponding PCs, those PCs are displayed. FIG. 12 is a diagram showing an example of a screen when there is a corresponding PC. Here, the PC whose property information is to be updated is selected.
[0065]
In step S706, the setup module in the server apparatus controls the OS to transmit a property information update notification to the PC instructed to update. In step S707, the setup module in the server apparatus determines whether there is a property information transmission request from each client apparatus.
[0066]
If there is no transmission request, the process proceeds to step S709. If there is a transmission request, the process proceeds to step S708, and the setup module in the server device generates an instruction for controlling the OS to transmit the designated property information to the requested PC. Here, the property information is a file described in a predetermined data format. In the client PC on which the driver is installed, the property information can be input or output by the user instructing the driver.
[0067]
In step S709, the setup module in the server apparatus determines whether there is a response from all the PCs that have made the update notification. Here, if there is a response from all the PCs, the process is terminated. If there is no response from all the PCs, the process returns to step S708 to continue the process.
[0068]
On the other hand, FIG. 11 is a flowchart showing the processing operation of the client device.
First, in step S901, it is determined whether a property information update notification has been received from the server device. If there is no notification, the process ends.
[0069]
If there is a notification, the process moves to step S902 to determine whether or not to update the property information. FIG. 13 is a diagram showing an example of a message displayed in that case. Here, when “No” is selected to cancel the update, the server apparatus is notified that the update is not performed, and the process ends. If “Yes” is selected and the update is performed, the process proceeds to step S903, a request for transmitting property information is sent to the server, and the process proceeds to step S904.
[0070]
In step S904, the setup module in the client apparatus determines whether property information and setup information have been acquired from the server apparatus. If not acquired, the process returns to step S903 and continues to wait until acquisition is possible. If the property information and the setup information can be acquired, the process proceeds to step S905, and the property information of the driver designated based on the acquired information is updated and set according to the setup instruction included in the setup information.
[0071]
Here, the setup instruction controls, for example, a process in which the setup module in the client apparatus calls the API of the OS in the client apparatus and registers the received property information in the registry area of the OS. Further, the setup instruction may control a process for issuing an instruction for instructing the driver setup module to read property information to the driver.
[0072]
In this example, the confirmation message is displayed in step S902. However, the update process may be automatically performed without displaying the message.
[0073]
As described above, in this embodiment, the PC and peripheral devices shared on the network are displayed in the window, and the property information of the peripheral driver is shared on the network. Property information can be updated. Also, common property information can be set for each client device from the server device. Further, by distributing property information management to client devices and exchanging information as necessary, traffic on the network can be minimized.
[0074]
(Fourth embodiment)
In the third embodiment, the setting or updating of the driver property information has been described. However, in this embodiment, when the server device side newly adds or updates the driver of the client device, the client device actively This is processing for distributing a driver without waiting for a request from the apparatus. In the present embodiment, parts different from the above-described embodiment will be described.
[0075]
The setup program in the install server device is a driver from the client device. of Without waiting for a transmission request, an API or system call of the OS is called to control a driver setup instruction and a process for distributing the driver. In parallel, the setup program transmits the driver property information to be transmitted to the client device either spontaneously from the installation server device or after waiting for a request from the client device after the driver is installed. Control the OS.
[0076]
FIG. 20 is a diagram illustrating an example of a printing system according to the present embodiment. A client apparatus A 381, a client apparatus B 382, a client apparatus C 383, an installation server apparatus 385 that is a preferable example of a server apparatus, and a file server apparatus 386 are preferable examples of a network. 360 is connected. In the install server device 385 and the file server 386 of this embodiment, 381 to 383 as client devices are configured by PCs which are preferable examples of information processing devices, and the internal structure is the same as that in FIG.
[0077]
FIG. 23 is a diagram illustrating a software module as a preferred example in each client apparatus. An example of installation processing in the driver client will be described with reference to FIG. An OS is installed in the client device. The area of the software module in each client device is divided into a user area 377 and an OS area 378.
[0078]
The driver installation module 371 is prepared as an application that runs on the OS. The system program 379 manages the driver name, printer name, and driver system directory stored in the client device by registering them in the registry 376.
[0079]
The driver installation module 371 calls the system installer 374 via an API (Application Programming Interface). The system installer 374 is prepared as a function of the OS. In response to a command from the driver installation module 371, the driver 372 installed from the outside and stored in the user area 377 is copied or moved to the system file area 375. To do. A part of the system file area 375 has a registry area 376 for registering various types of information on devices that use the driver. In addition, the driver installer module 371 can call the system installer 374 to store the driver setup information and property information in the registry area. A registry may be prepared for each user.
[0080]
Here, the driver installation module 371 calls the OS API for registering the property information in the registry 376 according to the setup instruction received from the external device, or calls the driver installed in the system file to obtain the property information. Perform the process to read. For example, for each printer registered in the OS of the client device, the driver property information can store favorite print settings as property information in the registry area of the OS.
[0081]
The driver property information may be received from the installation server device in the external file format described with reference to FIG. 14 and read into the file system in the user area 377. In this case, the driver property information in the file format can be automatically read by the driver installer, passed to the driver, and the driver property information can be reflected in the driver settings.
[0082]
FIG. 19 is a diagram illustrating an example of processing in which the install server device distributes the driver to the client device and sets property information. In the present embodiment, as described above with reference to FIG. 14, the driver property information uses information input by the administrator in the install server device as an external file. This process is started when a setup program having a remote installation function installed in the installation server device 385 is activated. In the processing of FIG. 19, the setup program in the installation server device 385 distributes the driver by push installation without waiting for a request from the client device.
[0083]
The setup program (management means) in the install server device 385 manages the property information for each printing device registered in the OS, and distributes the property information suitable for the function and option for each model of the printer. It is also conceivable to perform the distribution process of property information by controlling the OS.
[0084]
The OS of each client device that has received the driver and setup information from the install server device via the network inputs the property information of the driver and the property information setup instruction to the driver installer (input means).
[0085]
Based on this setup instruction, the installer Client device This property information is used so that drivers in Client device Install on the OS. For example, upon receiving a setup instruction command, the driver installer causes the driver to recognize the property information input from the OS by inputting the property information to the driver. In response to the setup instruction, the driver installer calls the API of the OS and registers the property information in the OS registry, and the driver recognizes the property information via the OS.
[0086]
The operation of the installer in the install server device 385 will be described below. Hereinafter, the client device A, the client device B, and the client device C are collectively referred to as “each client device”.
[0087]
Returning to the processing of FIG. First, the setup program in the install server device 385 determines whether or not there is an instruction to remotely install the driver in each client device in step S1901. The remote installation instruction is, for example, FIG. When the mouse 13 or the keyboard 12 is operated with reference to the graphical user interface displayed on the CRT 16 of the install server device 385 in FIG. 2, a setup instruction is input to the input control unit 11 in response to the operation. Here, if the setup program in the install server device 385 determines that there is no remote installation instruction, the process ends.
[0088]
On the other hand, if it is determined in step S1901 that the setup program in the installation server device 385 has received an instruction for remote installation, the process advances to step S1902 to create setup information for the driver to be remotely installed. Driver setup information is the name of the driver to be installed , It includes information such as the printer name, output port name, and module for making the port available. The printer name is registered and managed in the OS registry of each client device.
[0089]
Here, the processing in step S1902 will be described in detail with reference to FIG. FIG. 21 is displayed on the CRT of the install server device. setup It is an example of the screen which sets information. The administrator uses the setting screen to create setup information including a setup instruction. Reference numeral 331 denotes a printer name instruction unit. The printer name instruction unit 331 can select or input a printer name to be registered in each client device. A plurality of printers searched on the network may be designated by the printer name designation unit 331.
[0090]
Reference numeral 332 denotes a port designation unit. In the port designation section, a port can be added by pressing the 334 port addition instruction section with a mouse.
[0091]
In the setting example of FIG. 21, the IP address as information indicating the location of the printer on the network and the fact that lpr is used as the printing protocol are specified, and logical ports associated with these are created. Show. lpr is a traditional print management program, but of course, other print management programs may be used. Further, a network protocol different from TCP / IP may be used.
[0092]
Reference numeral 333 denotes a driver designation unit for instructing a driver to be installed in each client device. A driver can be specified by operating the driver addition instruction unit 335.
[0093]
The above is an example of creating a port when printing is performed for a network printer using TCP / IP and lpr. Ports can also be created for local printers. For example, when setting a local printer of a client device, a COM port or an LPD port may be designated, and setup information may be created based on this. Further, it is possible to set the port to indicate printing via the print server device. For example, if the print server name of the print server device 387 is “SVPC1” and the printer name of the printer 384 is LASER 950, specifying “\\ SVPC1 \ LASER950” and the port will print SVPC1 to the LASER 950 as a print server. A port for performing
[0094]
When the OK button 336 on the screen of FIG. 21 is pressed, FIG. 22 is displayed, and the process proceeds to step S1903 and step S1904.
[0095]
In step S1903, the setup program in the installation server device 385 selects a client device for installing the selected driver on the setting screen shown in FIG. It is also possible to select a plurality of distribution destination client devices at the same time.
[0096]
FIG. 22 is an example of a client device for setting up a driver used in the processing of FIG. 19 and a screen for instructing setting of property information. It is also possible to select a plurality of client devices at the same time. Also, the property information distribution setting unit 221 can set ON / OFF of property information setting processing execution. Using the property information file selection unit 222, the property information file created using the setting screen of FIG. 17 and desired to be distributed to each client device is selected. In FIG. 22, the property information A is selected. In this example, one or a plurality of client devices in the domain are selected, but designation across the same domain is also possible.
[0097]
In step S 1904, the setup program in the installation server device 385 specifies whether or not to distribute property information based on the input from the property information distribution setting unit 221, and further inputs from the property information file selection unit 222. Specify the property information name to be distributed based on.
[0098]
In step S1905, the setup program in the install server device 385 determines whether the setup program is set to execute the driver property information setting processing when the driver installation is completed on each client device. If the setup program in the install server device 385 determines that the driver property information is not set to be set in the client, the process of step S1907 is performed. If it is set to execute the property information setting process in the property information setting process client, the process advances to step S1906.
[0099]
In step S1906, the setup program in the install server device 385 automatically reads the external file corresponding to the property information name specified in S1904 including the property information. Here, the external output file is created by the administrator, automatically read from the directory in the install server device 385 where the file specified in step S1904 is stored, and the property information body and the property information to be distributed are set up as setup information. And instructing the OS to deliver setup information to the client.
[0100]
In step S1907, the setup program (recognition means) in the server device 385 recognizes the driver setup information including the setup instruction set and recognized in the above-described process, and the driver to be installed. The driver setup information including the setup instruction set / recognized in the above-described process is the setup information with the property information added in step S1906 if “Yes” in step S1905, and “No” in step S1905. Setup information that does not include the property information. Further, the setup program determines and recognizes the client device that installs one or a plurality of drivers instructed in step S1903, and instructs the OS via the API to distribute to the determined client device. Exit. It is preferable that the install server device 385 starts the distribution process of the property information in the install server device 385 in response to the driver installation start instruction input.
[0101]
In the processing shown in FIG. 19, the OS type and OS version are automatically determined by the install server device 385 based on the information of each client device collected and stored in the install server device 385 in advance. Yes. However, if the OS installed in each client device cannot be automatically determined, the user can select the OS type and version, and the graphical user interface shown in FIG. 21 before the setup program generates setup information in step S1902. It may be changed so that the type of CPU and the architecture of the CPU can be designated.
[0102]
In the processing shown in FIG. 19, the property information is actively distributed without waiting for a request from the server, but the install server device 385 responds to the property information transmission request from each client device. Then, the property information may be transmitted.
[0103]
The property information is output as an external file by the driver, distributed from the install server device 385, and used in each client device. Each client device automatically reads property information from the external file acquired from the install server device 385 outside each client device, and inputs the read property information into a driver in each client device to be read.
[0104]
(Other embodiments)
Software program for realizing the functions of the above-described embodiment for an apparatus or a computer in the system connected to the various devices so as to operate the various devices to realize the functions of the above-described embodiments. What was implemented by supplying the code and operating the various devices in accordance with a program stored in a computer (CPU or MPU) of the system or apparatus is also included in the scope of the present invention.
[0105]
In this case, the program code itself of the software realizes the functions of the above-described embodiment, and the program code itself and means for supplying the program code to the computer, for example, the program code are stored. The recorded medium constitutes the present invention. As a recording medium for storing the program code, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
[0106]
Further, by executing the program code supplied by the computer, not only the functions of the above-described embodiments are realized, but also the OS (operating system) or other application software in which the program code is running on the computer. Needless to say, the program code is also included in the embodiment of the present invention even when the functions of the above-described embodiment are realized in cooperation with the above.
[0107]
Further, after the supplied program code is stored in the memory provided in the function expansion board of the computer or the function expansion unit connected to the computer, the CPU provided in the function expansion board or function expansion unit based on the instruction of the program code Needless to say, the present invention also includes the case where the functions of the above-described embodiment are realized by performing part or all of the actual processing.
[0108]
It should be noted that the shapes and structures of the respective parts shown in the above embodiments are merely examples of implementation in carrying out the present invention, and these limit the technical scope of the present invention. It should not be interpreted. That is, the present invention can be implemented in various forms without departing from the spirit or main features thereof.
[0109]
【The invention's effect】
As described above, according to the present invention, the driver property information can be shared on the network, so that the driver property information can be updated with a simple operation. Also, common property information can be set for each client device from the server device.
[0110]
Also, in the driver installed in the client, the driver property information is distributed from the server device and set in the client device, so that the effort for setting the driver property information can be reduced and setting errors can be reduced. .
[0111]
Furthermore, the server device From Do a push install, If you are instructed to set up property information, Since the property information setting processing for the driver is performed, it is possible to reduce the burden of driver installation and property information setting processing performed in each client.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of an apparatus according to an embodiment.
FIG. 2 is a flowchart showing a processing operation of a PC functioning as a server device.
FIG. 3 is a diagram illustrating an example of a driver information structure.
FIG. 4 is a diagram illustrating an example of a property information structure.
FIG. 5 is a diagram illustrating an example of a screen displaying PCs and peripheral devices on a network.
FIG. 6 is a diagram showing an example of a screen that displays the driver setup status of each PC on the network.
FIG. 7 is a flowchart showing processing operations of a PC functioning as a client device.
FIG. 8 is a flowchart showing a processing operation of the server device.
FIG. 9 is a flowchart showing the processing operation of the client device.
FIG. 10 is a flowchart showing a processing operation of the server device.
FIG. 11 is a flowchart showing a processing operation of the client device.
FIG. 12 is a diagram illustrating an example of a screen for selecting a PC for updating property information.
FIG. 13 is a diagram illustrating an example of a screen displayed when a property information update notification is received.
FIG. 14: Driver Property information It is a figure which shows an example of a setting screen.
FIG. 15 is a diagram illustrating an example of a property information addition screen.
FIG. 16 is a diagram illustrating an example of a property information setting screen.
FIG. 17 is a diagram illustrating an example of a property information editing screen.
FIG. 18 is a diagram illustrating an example of a process in which an administrator registers property information in an install server device.
FIG. 19 is a diagram illustrating an example of a process in which an install server device distributes a driver to a client device and sets property information.
FIG. 20 is a diagram illustrating an example of a printing system according to the present embodiment.
FIG. 21 is displayed on the CRT of the install server device setup It is a figure which shows an example of the screen which sets information.
FIG. 22 is a diagram illustrating an example of a client device that sets up a driver used in the processing of FIG. 19 and a screen for instructing setting of property information.
FIG. 23 is a diagram showing a software module as a preferred example in each client device;
[Explanation of symbols]
1 System bus
2 CPU
3 Program memory
4 Communication control unit
5 Communication port
6 Communication line
7 Other devices on the network
8 External storage controller
9 Flexible disk
10 Hard disk
11 Input control unit
12 Keyboard
13 mouse
14 Video image memory
15 Display output controller
16 CRT
17 Printer control unit
18 Printer
1A Image reading device controller
1B Image reading device
381 Client device
382 Client device
383 client device
384 printer
385 Install server device
386 File server device
387 Print server device

Claims (15)

クライアント装置と通信する情報処理装置において、
当該情報処理装置の表示部に表示されるユーザインタフェースを用いて、周辺装置を制御するプログラムであるドライバを配信すべき複数のクライアント装置を選択させ選択手段と、
当該情報処理装置の表示部に表示されるユーザインタフェースを用いて、前記ドライバのプロパティ情報を配信するか否か、配信する場合はその配信するプロパティ情報を指定させる指定手段と、
前記指定手段でプロパティ情報の配信を行うことが指定されている場合には、前記選択手段で選択された複数のクライアント装置に対して、前記指定手段で指定された前記ドライバのプロパティ情報と、前記ドライバと、前記ドライバのセットアップ指示とを配信し、前記指定手段でプロパティ情報の配信を行うことが指定されていない場合には、前記選択手段で選択された複数のクライアント装置に対して、前記ドライバと、前記ドライバのセットアップ指示とを配信するよう制御する配信制御手段とを備えたことを特徴とする情報処理装置。
In an information processing apparatus that communicates with a client apparatus,
Using the user interface displayed on the display unit of the information processing apparatus, a selection means for Ru to select the plurality of client devices to be delivered to the driver is a program for controlling the peripheral device,
Using the user interface displayed on the display unit of the information processing apparatus, whether or not to distribute the property information of the driver, when the delivery designating means for causing specifying property information to its delivery,
When it is specified that distribution of property information is specified by the specifying means, the property information of the driver specified by the specifying means for the plurality of client devices selected by the selecting means, and the When the driver and the driver setup instruction are distributed and the property information is not distributed by the specifying unit, the driver is sent to the plurality of client devices selected by the selecting unit. And a delivery control means for controlling delivery of the driver setup instruction .
前記セットアップ指示は、前記クライアント装置が前記プロパティ情報をOSに登録するよう前記クライアント装置を制御するためのセットアップ指示を含むことを特徴とする請求項1に記載の情報処理装置。  The information processing apparatus according to claim 1, wherein the setup instruction includes a setup instruction for controlling the client apparatus so that the client apparatus registers the property information in an OS. 前記セットアップ指示は、前記ドライバ前記プロパティ情報を読み込むように前記ドライバ制御する指示を含むことを特徴とする請求項1に記載の情報処理装置。The set-up instructions, the information processing apparatus according to claim 1, characterized in that it comprises an instruction to the driver to control the driver to read the property information. 前記プロパティ情報をOSに登録されている印刷装置ごとに管理する管理手段をさらに備え、
前記配信制御手段は、前記印刷装置に対応するプロパティ情報を配信する処理を制御することを特徴とする請求項2に記載の情報処理装置。
A management unit for managing the property information for each printing apparatus registered in the OS;
The information processing apparatus according to claim 2, wherein the distribution control unit controls a process of distributing property information corresponding to the printing apparatus.
前記配信制御手段は、前記プロパティ情報を前記情報処理装置におけるドライバ設定開始の指示の入力に応答して配信する処理を制御することを特徴とする請求項1に記載の情報処理装置。  The information processing apparatus according to claim 1, wherein the distribution control unit controls a process of distributing the property information in response to an input of a driver setting start instruction in the information processing apparatus. 前記配信制御手段は、前記情報処理装置内において前記情報処理装置内のドライバ生成した前記プロパティ情報を、自動的に読み込んで前記クライアント装置に配信する処理を制御することを特徴とする請求項1に記載の情報処理装置。Wherein the distribution control means according to claim 1, characterized in that to control the process of delivering the property information generated by the driver in the information processing apparatus, automatically Loading the client device within the information processing apparatus The information processing apparatus described in 1. 前記セットアップ指示は、シンプル・オブジェクト・アクセス・プロトコルによって実現されていることを特徴とする請求項1に記載の情報処理装置。  The information processing apparatus according to claim 1, wherein the setup instruction is realized by a simple object access protocol. クライアント装置と通信する情報処理装置における情報処理方法において、
前記情報処理装置の表示部に表示されるユーザインタフェースを用いて、周辺装置を制御するプログラムであるドライバを配信すべき複数のクライアント装置を選択させ選択手順と、
前記情報処理装置の表示部に表示されるユーザインタフェースを用いて、前記ドライバのプロパティ情報を配信するか否か、配信する場合はその配信するプロパティ情報を指定させる指定手順と、
前記指定手順でプロパティ情報の配信を行うことが指定されている場合には、前記選択手順で選択された複数のクライアント装置に対して、前記指定手順で指定された前記ドライバのプロパティ情報と、前記ドライバと、前記ドライバのセットアップ指示とを配信し、前記指定手順でプロパティ情報の配信を行うことが指定されていない場合には、前記選択手順で選択された複数のクライアント装置に対して、前記ドライバと、前記ドライバのセットアップ指示とを配信するよう制御する配信制御手順とを有することを特徴とする情報処理方法。
In an information processing method in an information processing apparatus communicating with a client apparatus,
Using the user interface displayed on the display unit of the information processing apparatus, a plurality of Ru selection procedure the client device is selected to be delivered to the driver is a program for controlling the peripheral device,
Using the user interface displayed on the display unit of the information processing apparatus, whether or not to distribute the property information of the driver, when the delivery designation procedure makes specifying property information to its delivery,
When it is specified that the distribution of property information is specified in the specifying procedure, the property information of the driver specified in the specifying procedure and the plurality of client devices selected in the selecting procedure, When the driver and the driver setup instruction are distributed and the distribution of property information is not specified in the specification procedure, the driver is sent to the plurality of client devices selected in the selection procedure. And a delivery control procedure for controlling delivery of the driver setup instruction .
前記セットアップ指示は、前記クライアント装置が前記プロパティ情報をOSに登録するよう前記クライアント装置を制御するためのセットアップ指示を含むことを特徴とする請求項8に記載の情報処理方法。  The information processing method according to claim 8, wherein the setup instruction includes a setup instruction for controlling the client apparatus so that the client apparatus registers the property information in an OS. 前記セットアップ指示は、前記ドライバ前記プロパティ情報を読み込むように前記ドライバ制御する指示を含むことを特徴とする請求項8に記載の情報処理方法。The set-up instructions, information processing method according to claim 8, characterized in that it comprises an instruction to the driver to control the driver to read the property information. 前記プロパティ情報をOSに登録されている印刷装置ごとに管理する管理手順をさらに有し、
前記配信制御手順では、前記印刷装置に対応するプロパティ情報を配信する処理を制御することを特徴とする請求項9に記載の情報処理方法。
A management procedure for managing the property information for each printing apparatus registered in the OS;
The information processing method according to claim 9, wherein the distribution control procedure controls a process of distributing property information corresponding to the printing apparatus.
前記配信制御手順では、前記プロパティ情報を前記情報処理装置におけるドライバ設定開始の指示の入力に応答して配信する処理を制御することを特徴とする請求項8に記載の情報処理方法。  9. The information processing method according to claim 8, wherein the distribution control procedure controls a process of distributing the property information in response to an input of a driver setting start instruction in the information processing apparatus. 前記配信制御手順では、前記情報処理装置内において前記情報処理装置内のドライバ生成した前記プロパティ情報を、自動的に読み込んで前記クライアント装置に配信する処理を制御することを特徴とする請求項8に記載の情報処理方法。Wherein the distribution control procedure, according to claim 8, characterized in that to control the process of delivering the property information driver in the information processing apparatus is generated within the information processing apparatus, automatically Loading the client device Information processing method described in 1. 前記セットアップ指示は、シンプル・オブジェクト・アクセス・プロトコルによって実現されていることを特徴とする請求項8に記載の情報処理方法。  The information processing method according to claim 8, wherein the setup instruction is realized by a simple object access protocol. クライアント装置と通信する情報処理装置において実行される制御プログラムにおいて、
前記情報処理装置の表示部に表示されるユーザインタフェースを用いて、周辺装置を制御するプログラムであるドライバを配信すべき複数のクライアント装置を選択させ選択処理と、
前記情報処理装置の表示部に表示されるユーザインタフェースを用いて、前記ドライバのプロパティ情報を配信するか否か、配信する場合はその配信するプロパティ情報を指定させる指定処理と、
前記指定処理でプロパティ情報の配信を行うことが指定されている場合には、前記選択処理で選択された複数のクライアント装置に対して、前記指定処理で指定された前記ドライバのプロパティ情報と、前記ドライバと、前記ドライバのセットアップ指示とを配信し、前記指定処理でプロパティ情報の配信を行うことが指定されていない場合には、前記選択処理で選択された複数のクライアント装置に対して、前記ドライバと、前記ドライバのセットアップ指示とを配信するよう制御する配信制御処理とを前記情報処理装置に実行させることを特徴とする制御プログラム。
In a control program executed in an information processing device that communicates with a client device,
Using the user interface displayed on the display unit of the information processing apparatus, the selection process of Ru to select a plurality of client devices to be delivered to the driver is a program for controlling the peripheral device,
Using the user interface displayed on the display unit of the information processing apparatus, whether or not to distribute the property information of the driver, when the delivery designation causes specifying processing property information that delivery,
When it is specified that the distribution of property information is specified in the specifying process, the property information of the driver specified in the specifying process and the plurality of client devices selected in the selecting process, When the driver and the driver setup instruction are distributed and the distribution of the property information is not specified in the specifying process, the driver is sent to the plurality of client devices selected in the selecting process. And a control program for causing the information processing apparatus to execute distribution control processing for controlling distribution of the driver setup instruction .
JP2001355021A 2000-12-22 2001-11-20 Information processing apparatus, method, and control program Expired - Fee Related JP4617038B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2001355021A JP4617038B2 (en) 2000-12-22 2001-11-20 Information processing apparatus, method, and control program
US10/011,975 US7065564B2 (en) 2000-12-22 2001-12-11 Network system, method and apparatus for processing information, and control program
US11/418,025 US7606874B2 (en) 2000-12-22 2006-05-05 Network system, method and apparatus for processing information, and control program
US12/390,403 US20090219568A1 (en) 2000-12-22 2009-02-20 Network system, method and apparatus for processing information, and control program

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000391202 2000-12-22
JP2000-391202 2000-12-22
JP2001355021A JP4617038B2 (en) 2000-12-22 2001-11-20 Information processing apparatus, method, and control program

Publications (3)

Publication Number Publication Date
JP2002251347A JP2002251347A (en) 2002-09-06
JP2002251347A5 JP2002251347A5 (en) 2005-05-12
JP4617038B2 true JP4617038B2 (en) 2011-01-19

Family

ID=26606429

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001355021A Expired - Fee Related JP4617038B2 (en) 2000-12-22 2001-11-20 Information processing apparatus, method, and control program

Country Status (1)

Country Link
JP (1) JP4617038B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3919721B2 (en) 2002-10-29 2007-05-30 キヤノン株式会社 Information processing method and information processing apparatus
US7853946B2 (en) 2003-02-28 2010-12-14 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and control program
JP4522061B2 (en) * 2003-07-31 2010-08-11 キヤノン株式会社 Information processing apparatus and method, and program
JP3958283B2 (en) 2003-12-15 2007-08-15 キヤノン株式会社 Printing system, control method, storage medium, and program
JP4760415B2 (en) 2006-02-06 2011-08-31 セイコーエプソン株式会社 Computer device driver implementation method
CN104898995B (en) 2011-02-10 2019-04-23 精工爱普生株式会社 The print control program and client terminal of network system, network system
JP5732896B2 (en) 2011-02-21 2015-06-10 セイコーエプソン株式会社 Network system and network system control method
JPWO2014156128A1 (en) 2013-03-29 2017-02-16 セイコーエプソン株式会社 Network device, network printer, and network device control method

Also Published As

Publication number Publication date
JP2002251347A (en) 2002-09-06

Similar Documents

Publication Publication Date Title
US7606874B2 (en) Network system, method and apparatus for processing information, and control program
US7743374B2 (en) Network system, information processing apparatus, information processing method, and control program for remote driver installation
JP4240690B2 (en) Information processing apparatus, information processing method, information processing system, and recording medium
US6915514B1 (en) Information processing apparatus, information processing system, control method of information processing apparatus, control method of information processing system, and storage medium having programs capable of being read and stored by computer
JP4371516B2 (en) Management server device, print processing method, information processing device, print control method, and computer-readable storage medium
JP4847212B2 (en) Information processing apparatus, print control method, program, and computer-readable storage medium
US20040223182A1 (en) Information processing apparatus, information processing method, and control program
US9218150B2 (en) Image forming apparatus and method thereof
US8587811B2 (en) Information processing apparatus and method thereof
US20020085228A1 (en) Information processing apparatus and print control apparatus, data processing method, storage medium and program
JP2005050059A (en) Client/server system, information processing apparatus and method, program and storage medium
JP4623461B2 (en) Information processing apparatus, print control method, printer driver program, and recording medium
JP3870065B2 (en) Network system, information processing apparatus, information processing method, and control program
JP2012216166A (en) Information processing apparatus, method thereof, and program
JP2020004158A (en) Information processing apparatus, method of controlling information processing apparatus, and program
JP2000276313A (en) Printer and network printing system
JP2001236298A (en) Data processor, printing system and method for controlling setting of driver software for them
JP4617038B2 (en) Information processing apparatus, method, and control program
JP3774684B2 (en) Information processing apparatus, printer setting method of information processing apparatus, program, and recording medium
JP4100895B2 (en) Network system, information processing apparatus, method, and control program
JP2005258924A (en) Information processing apparatus, control method therefor, and image forming system
JP4168528B2 (en) Copy system control method and apparatus, and computer-readable recording medium recording control program
JP2010225176A (en) Printing system
JP2005115660A (en) Printing service system, printing processing method, storage medium storing computer readable program, and the program
JP4181963B2 (en) Print service system and method, and client apparatus

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050322

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050523

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060516

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060718

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060724

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20070105

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100311

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101025

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4617038

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131029

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees