JP4393348B2 - 情報処理装置、方法及びプログラム - Google Patents

情報処理装置、方法及びプログラム Download PDF

Info

Publication number
JP4393348B2
JP4393348B2 JP2004323971A JP2004323971A JP4393348B2 JP 4393348 B2 JP4393348 B2 JP 4393348B2 JP 2004323971 A JP2004323971 A JP 2004323971A JP 2004323971 A JP2004323971 A JP 2004323971A JP 4393348 B2 JP4393348 B2 JP 4393348B2
Authority
JP
Japan
Prior art keywords
driver
information processing
processing apparatus
peripheral device
information
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
JP2004323971A
Other languages
English (en)
Other versions
JP2005092895A (ja
Inventor
晴生 町田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2004323971A priority Critical patent/JP4393348B2/ja
Publication of JP2005092895A publication Critical patent/JP2005092895A/ja
Application granted granted Critical
Publication of JP4393348B2 publication Critical patent/JP4393348B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation

Description

本発明は、情報処理装置、方法及びプログラムに係り、ネットワーク上で共有された情報処理装置や周辺機器の表示や管理等を行うものに関する。
近年、パーソナルコンピュータ(以下、PCと称する)や、プリンタ、スキャナ、デジタルカメラ等の周辺機器の普及と共に、LAN等のネットワークも普及してきており、ネットワーク上で複数のPCによりプリンタ、モデム、スキャナ等を共有するニーズも増えてきた。また、これらの周辺機器を使用するためのドライバも数多く提供され、そのインストール方法も提供されてきた。
しかし、周辺機器を性能上の問題で買い替えたり、使用する上で接続するPCを変更したりした場合に、これらの周辺機器のドライバが削除されないままとなることが多かった。そのため、実際に周辺機器を使用する際に、不必要なドライバまでリスト表示されるために選択しにくくなったり、どのドライバが有効であるか分からなくなったりすることがあり、作業効率が悪くなってしまうという問題があった。
また、別の問題として、不必要になった制御プログラムであるドライバプログラムを、コンピュータからの指示により、情報処理装置の記憶手段から遠隔的にアンインストールすることができなかった。
本発明は上記のような点の少なくとも一つに鑑みてなされたものであり、ネットワーク上のコンピュータにおいて不必要になったドライバをアンインストールする作業効率を向上させること、及び、不必要になった制御プログラムを、コンピュータからの指示により、情報処理装置の記憶手段から遠隔的にアンインストールすることの少なくとも一つを達成することを目的とする。
上記課題を解決するための手段として、本発明の情報処理装置について述べると、周辺機器並びに外部情報処理装置と通信する情報処理装置であって、前記外部情報処理装置における、周辺機器を制御するデバイスドライバのセットアップ状況を取得するセットアップ情報取得手段と、前記セットアップ情報取得手段により取得したセットアップ情報に基づいて、前記情報処理装置にセットアップされているデバイスドライバに対応する周辺機器がネットワーク上に存在するか否かを判定する第1の判定手段と、前記第1の判定手段によりネットワーク上に存在しないと判定された周辺機器が、他の情報処理装置において利用可能な状態に共有設定されているか否かを判定する第2の判定手段と、前記第2の判定手段により、前記周辺機器が共有設定されていると判定された場合に、前記外部情報処理装置において前記周辺機器に対応するデバイスドライバを削除させるドライバ削除通知を前記外部情報処理装置に対してい、前記第2の判定手段により、前記周辺機器が共有設定されていないと判定された場合には、前記外部情報処理装置において前記周辺機器に対応するデバイスドライバを削除させるドライバ削除通知を前記外部情報処理装置に対して行わないドライバ削除通知手段とを備えた点に特徴を有する。
本発明の一つの側面によれば、ネットワーク上のコンピュータにおいて不必要になったドライバをアンインストールする作業効率を向上させることができる。さらに、本発明の別の側面によれば、不必要になった制御プログラムを、コンピュータからの指示により、情報処理装置の記憶手段から遠隔的にアンインストールすることができる。
以下、添付図面を参照して、本発明の好適な実施形態について説明する。
図1は、本実施の形態の情報処理装置の構成を説明するブロック図である。同図において、1はシステムバスであり、当該システムバス1を介して以下に述べる各構成ブロックが接続されている。
2はCPU(Central Processing Unit)である。3はプログラムメモリ(以下、PMEMと称する)であり、後述する処理のためのプログラムを適宜ハードディスク10から選択/読込みし、CPU2にて実行する。また、キーボード12から入力されたデータは、テキストメモリでもあるPMEMにコード情報として格納される。
4は通信制御部であり、通信ポート5における入出力データの制御を行う。通信ポート5から出力された信号は、通信回線6を経由して、ネットワーク上の他の装置(図1では符号7を付す)の通信ポートに伝えられる。ネットワーク上で共有されているプリンタやスキャナ等とのやり取りは、この通信制御部4を介して行われる。本実施の形態では、LAN等のネットワークに関して記述するが、この通信制御部4に接続される通信ポート5及び通信回線6が一般の公衆回線であっても本発明が適応されることは言うまでもない。
8は外部記憶装置制御部である。9、10はデータファイル用のディスクであり、例えば9はフレキシブルディスクFDであり、10はハードディスクHDである。
11は入力制御部であり、キーボード12、マウス13等の入力装置が接続される。ユーザは、キーボード12を操作することによりシステムの動作指令等を行うことができる。また、マウス13はCRT16上で画像情報を加工指示するためのポインティング・デバイスPDとして機能し、これによりCRT16上のカーソルをX,Y方向任意に移動してコマンドメニュー上のコマンド・アイコンを選択して処理の指示を行う他、編集対象の指示、描画位置の指示等も行うことができる。
14はビデオイメージメモリ(VRAM)であり、15は表示出力制御部であり、16はCRT(Cathode-Ray Tube)である。CRT16に表示されるデータは、VRAM14上にビットマップデータとして展開される。
17はプリンタ制御部であり、接続されているプリンタ18に対するデータの出力制御を行う。1Aは、画像読み取り装置制御部であり、接続されている画像読み取り機器1Bの制御を行う。
なお、本実施の形態でPMEM3に記憶しているプログラムは、ハードディスク10やフレキシブルディスク9等の記憶媒体に記憶されていてもよい。さらに、ネットワークに接続されている他の装置上に記憶されていてもよい。
以下、図2〜9を参照して、周辺機器のドライバのセットアップを行う場合について説明する。図2は、ドライバのセットアップを行う処理動作を示すフローチャートである。まず、ステップS201で、ネットワーク上の全てのPC及び周辺機器の接続状況情報を取得し、その情報を記憶する。
次に、ステップS202で、各PCの周辺機器のドライバのセットアップ状況情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、FAX等のドライバのことである。セットアップ状況情報の取得方法として、例えば、各PC上で自機にインストールされているドライバ情報を取得するモジュールを起動させることで情報を収集して、それらの情報をネットワークを通じて通信することが考えられる。
図3は、セットアップされているドライバ情報構造体の一例を示す図である。PC名称、IPアドレス、OS種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報は、プリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有情報で構成される。例えば、1番目に登録されているプリンタは、ドライバ名がprinter 2000、バージョンが1.00.00、出力ポートがローカル、共有情報が共有設定(ON)となっている。
図4は、ネットワーク上のPC及び周辺機器を表示する画面の一例を示す図である。401はメニュー、402はツールバー、403はネットワーク上のPC及び周辺機器を表すアイコンが表示されるメインウインドウである。
402a〜402gは、ツールバー402においてPC及び周辺機器を操作して行う各機能を表すアイコンである。例えば、402aは選択されたスキャナから画像データを読み込み、該画像データを選択されたプリンタに出力するコピー機能を実行するためのアイコンである。402bはFAX機能、402cは画像データ読み込み機能、402dは画像データを読み込み、OCR処理を行う機能、402eはFAX受信データ及び配信データを管理する機能、402fは情報の更新処理を行う機能、402gは更新処理を中止する機能を実行するためのアイコンである。
403a〜403aeはネットワーク上で共有されているPC及び周辺機器を表すアイコンである。これらのアイコン403a〜403aeは、PC、プリンタ、スキャナ、FAXモデムといったデバイス種類、或いは「処理中」、「エラー発生」等のステータスによってアイコンが変更されて表示される。403aは自機を表すアイコン、403bは自機がログオンしているドメインを表すアイコンである。自機は特別な機器であるために、他のPCとは区別して表示される。
また、アイコン403adのようにネットワーク上では共有されているが、ドライバがインストールされていないPC及び周辺機器はアイコンがグレー表示される。また、アイコン403d、403eのように接続機器があるが展開して表示されていない場合には「+」マークが、アイコン403abのように展開されている場合には「−」マークが表示される。アイコン403c、403gのように接続機器が何もない場合にはマークが付加されない。
このように該画面でネットワーク上の全てのPC及び周辺機器の接続状態、さらにはステータスを確認することができる。この例では、画面の都合上、全てのアイコンが表示されていないが、画面横に配置されているスクロールバーを使って全てのPC及び周辺機器を確認することができる。
図5は、ネットワーク上の各PCのドライバセットアップ状況を表示する画面の一例を示す図である。501はメニュー、502はツールバー、503はネットワーク上のPC及び周辺機器を表すアイコンが表示されるメインウインドウである。
502a〜502gは、ツールバー502においてPC及び周辺機器を操作して行う各機能を表すアイコンであり、その内容は、図4に示すアイコン402a〜402gと同様である。503a〜503nはネットワーク上で共有されているPC及び周辺機器を表すアイコンである。ここで、周辺機器のドライバ情報が表示され、確認することができる。
図2のフローチャートに説明を戻すと、ステップS203で、周辺機器のドライバをセットアップするか否かを判定する。例えば、図4においてプリンタ403adを選択して、メニューからドライバのセットアップ指示を行うことができる。ここで、ドライバのセットアップ指示がなかった場合は、この処理を終了する。
ドライバのセットアップ指示があった場合、ステップS204に移行し、セットアップするドライバを指示する。図6はセットアップするドライバを選択するための画面の一例であり、ここで製造元を選択して、対象プリンタを指示する。また、ユーザがセットアップ情報のあるフォルダを指示することもできる。
さらに、ステップS205で、ドライバをセットアップするPCを選択する。図7はドライバをセットアップするPCを選択するための画面の一例であり、ここでドメイン、及びPCを選択する。この際、複数のPCを選択することができる。
そして、OKの指示があると、ステップS206に移行し、指示されたドライバを指示されたPCにセットアップする必要があるか否かを、それぞれのPCからのドライバ情報から判定する。指示されたドライバが既にインストールされている等してセットアップする必要がない場合は、インストール処理を行わない。
セットアップする必要がある場合、ステップS207に移行し、ステップS205で指示されたPCに対してステップS204で指示されたドライバのセットアップ処理を実行するように指示が送られる。そして、その指示に従ってドライバのセットアップ処理が実行される。図8はドライバセットアップ指示構造体の一例であり、デバイス種類、ドライバ名、バージョン情報、出力ポート、セットアップ情報等から構成される。なお、セットアップ情報はこの構造体と共に送られてもよいが、ネットワーク上の共有フォルダに記憶しておいてそのパス名を指示するようにしてもよい。
次に、ステップS208で、ドライバのセットアップ処理が正常終了したか否かを判定する。判定方法としては、ドライバのインストール処理が正常に行われたかどうか判定すると同時に、実際にそのドライバを使用して正常動作するかどうかで判定する。例えば、ドライバが正常にインストールできた場合には、セットアップ指示をしたPCに対して正常終了したメッセージが送信されるようにして、画面上で確認できるようにする。
プリンタの場合には、さらにテストプリントを実行することで、その印刷結果を見て、正常にインストールできたかどうかを判定できるようにしてもよい。図9は、ドライバのセットアップ確認印刷の一例を示す。このように、出力元PC名、ドライバ名、バージョン情報等を印刷することで、どのPC上でセットアップ処理が正常に完了したかを確認することができる。正常終了した場合は、処理を終了する。
正常終了しなかった場合、ステップS209に移行し、正常終了しなかったPCに対して再度実行指示をするか否かを判定する。再実行の指示があった場合は、ステップS204に戻り、再実行の指示がなかった場合、処理を終了する。
以上述べたように、ネットワーク上で共有されているPC及び周辺機器が表示されている画面において、周辺機器のドライバがインストールされていない場合、簡単な操作でドライバをインストールできると共に、実際にインストールされたことを確認することができ、ネットワーク上での作業効率を大幅に向上させることができる。
以下、図10〜19を参照して、周辺機器のドライバのチェック、さらには削除を行う場合について説明する。図10は、ドライバのチェック、さらには削除を行う処理動作を示すフローチャートである。まず、ステップS1001で、ネットワーク上の全てのPC及び周辺機器の接続状況情報を取得し、その情報を記憶する。
次に、ステップS1002で、自機にインストールされている周辺機器のドライバのセットアップ状況情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、FAX等のドライバのことである。
図11は、セットアップされているドライバ情報構造体の一例を示す図である。PC名称、IPアドレス、OS種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報は、プリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有情報で構成される。例えば、1番目に登録されているプリンタは、ドライバ名がLASER-830、バージョンが1.00.00、出力ポートがローカル接続、共有情報が共有設定(ON)となっている。
図12は、ネットワーク上のPC及び周辺機器を表示した画面の一例を示す図である。301はメニュー、302はツールバー、303はPC及び周辺機器を表すアイコンが表示されるメインウインドウである。
302a〜302iは、ツールバー302においてPC及び周辺機器を操作して行う各機能を表すアイコンである。例えば、302aは選択されたスキャナから画像データの読み込み、該画像データを選択されたプリンタに出力するコピー機能を実行するためのアイコンである。302bはFAX機能、302cは画像データ読み込み機能、302dは画像データを読み込み、OCR処理を行う機能、302eはFAX受信データ及び配信データを管理する機能、302fは表示切り替え機能、302gは表示画面編集機能、302hは情報の更新処理を行う機能、302iは更新処理を中止する機能を実行するためのアイコンである。
303a〜303qはネットワーク上で共有されているPC及び周辺機器を表すアイコンである。これらのアイコン303a〜303qは、PC、プリンタ、スキャナ、FAXモデムといったデバイス種類、或いは「処理中」、「エラー発生」等のステータスによってアイコンが変更されて表示される。303cは自機を表すアイコン、303bは自機がログオンしているドメインを表すアイコンである。自機は特別な機器であるために、他のPCとは区別して先頭に表示される。その他のPCについては、アルファベット順に昇順或いは降順で表示される。
また、アイコン303pのようにネットワーク上では共有されているが、ドライバがインストールされていないPC及び周辺機器はアイコンがグレー表示される。また、アイコン303jのように接続機器があるが展開して表示されていない場合には「+」マークが、アイコン303h、303k、303nのように展開されている場合には「−」マークが表示される。アイコン303qのように接続機器が何もない場合はマークが付加されない。
このように該画面でネットワーク上の全てのPC及び周辺機器の接続状態、さらにはステータスを確認することができる。この例では、画面の都合上、全てのアイコンが表示されていないが、画面横に配置されているスクロールバーを使って全てのPC及び周辺機器を確認することができる。
図13は、図12に示す状態から、アイコン303hで表されるPCに接続されてネットワーク上で共有設定されていたアイコン303iで表されるプリンタの共有設定が解除された、或いはドライバが削除された場合に表示される画面の一例を示す図である。同図に示すように、アイコン303iには、「使用不可」を示す表示「×」印が表示される。この状態では、ドライバがインストールされているが、実際の出力先が存在しないので出力できない。
図10のフローチャートに説明を戻すと、ステップS1003で、周辺機器のドライバをチェックするか否かを判定する。例えば、図14に示すような画面が表示されて、チェックするデバイスを選択することでドライバのチェック指示を行うことができる。この画面で、チェックした際に対応するデバイスがないために不要だと判定された場合、メッセージ表示するか否かの設定も併せて指定することができる。ここで、ドライバのチェック指示がなかった場合は、この処理を終了する。
ドライバのチェック指示があった場合、ステップS1004に移行し、チェック対象とされたドライバ全てをチェックしたか否かを判定する。全てのドライバについてチェックした場合は、この処理を終了する。
全てのドライバをチェックしていない場合、ステップS1005に移行し、チェックするドライバが削除禁止設定されているか否かを判定する。例えば、通常良く使うプリンタ等でチェック処理を実行したときに、たまたま電源が入っていない等していたために対象デバイスがないと判定されて削除されるのでは、再度ドライバをインストールしなおさなければならず、ユーザにとって不便である。
そこで、削除したくないドライバに対して削除禁止設定を行えるようにする。図15はドライバの削除禁止設定を行うための画面の一例であり、ここで削除を禁止したいドライバを選択して、禁止リストに追加登録することで削除禁止設定を行うことができる。逆に、削除禁止を解除したいドライバを選択して、禁止リストから削除することもできる。
上記ステップS1005で、禁止されていた場合は、ステップS1004に戻り、次のドライバをチェックする。禁止されていない場合、ステップS1006に移行し、ドライバに対応するデバイスが存在するか否かを判定する。例えば、プリンタならば、出力ポート先に問い合わせて応答があるかどうかで判定する。スキャナ等に対しては、入力ポートに対して同様の処理を行ってチェックする。対象デバイスが存在する場合は、ステップS1004に戻り、次のドライバをチェックする。
対象デバイスが存在しない場合、ステップS1007に移行し、削除メッセージを表示するか否かを判定する。この判定は、ステップS1003で設定された情報に従って行われる。ここで、メッセージを表示するように設定されていた場合は、ステップS1008に移行する。メッセージを表示しないように設定されていた場合、ステップS1009に移行する。
ステップS1008では、ユーザに対して削除を実行するかどうかの指定を促すメッセージが表示される。図16は、削除するドライバがあった場合に表示されるメッセージの一例である。このように対象ドライバが表示されて、削除するかどうかの指示を行う。ここで、「はい」が指示された場合は、ステップS1009に移行する。「いいえ」が指示された場合、削除処理がキャンセルされ、ステップS1004に戻り、次のドライバをチェックする。
ステップS1009では、指定されたドライバの削除処理を実行する。そして処理が終わった後にステップS1004に戻り、次のドライバをチェックする。
図10に示したフローチャートでは、デバイスを共有設定されているコンピュータでドライバのチェックを行っているが、デバイスを共有設定しているコンピュータでドライバの削除指示を行う場合も考えられる。図17、18では、デバイスを共有設定しているコンピュータ(本発明の情報処理装置)でドライバの削除指示を行う場合のフローチャートを示す。
まず、ステップS801、S802は、ステップS1001、S1002と同様の処理である。ステップS803で、インストールされているドライバについて全てチェックしたかどうか判定する。全てのドライバについてチェックした場合は、この処理を終了する。
全てのドライバをチェックしていない場合、ステップS804に移行し、ドライバに対応するデバイスがローカルデバイスか、ネットワークで共有されたデバイスかを判定する。ローカルデバイスでなかった場合は、ステップS803に戻り、次のドライバをチェックする。
ローカルデバイスであった場合には、ステップS805に移行し、ドライバに対応するデバイスが存在するか否かを判定する。判定方法は、ステップS1005と同様である。ドライバに対応するデバイスが存在する場合は、ステップS811に移行する。
ドライバに対応するデバイスが存在しない場合、ステップS806に移行し、そのドライバが共有設定を行っていたか否かを判定する。共有設定していなかった場合は、ステップS808に移行する。
共有設定していた場合、ステップS807に移行し、対象デバイスが使用できなくなったことを他のコンピュータにネットワークを通じて通知し、ステップS808に移行する。図19は、ドライバの削除を通知する情報構造体の一例であり、デバイス種類、ドライバ名、バージョン情報、出力ポート等の情報を持っている。
上記の処理においては、デバイスを共有設定しているコンピュータ(本発明の情報処理装置)では、各PC(外部情報処理装置)の周辺機器からドライバのセットアップ状況情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、FAX等のドライバのことである。セットアップ状況情報の取得方法としては、例えば、各PC上で自機にインストールされているドライバ情報を取得するモジュールを起動させることで情報を要求して収集して、本情報処理装置が外部情報処理装置(各PC)からそれらの情報をネットワークを通じて通信することが考えられる。
図21は、セットアップされているドライバ情報構造体の一例を示す図である。PC名称、IPアドレス、OS種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報はプリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有名、ドライバ情報アドレスで構成される。例えば、1番目に登録されているプリンタはドライバ名がLASER-830、バージョンが1.00.00、出力ポートがローカル、共有名がLASER-830、ドライバ情報アドレスがOx10000となっている。この情報を各PC毎に記録する。
上記のようにセットアップ情報を各PC間で送受信することにより、各PCにおいて共有設定されているデバイスのドライバを認識することができる。この情報を用いて、他のPCの使用できなくなったローカルデバイスを共有設定しているPC(本発明の情報処理装置)は、共有設定されている当該ローカルデバイスのドライバを有するPCに対して、当該ローカルデバイスが使用できなくなったことを通知する。当該通知を受けた各PCは、当該デバイスに対応するドライバの指定を含む通知を受けると、図18に示すように、当該デバイスに対応するドライバの削除処理を行う。また、ドライバの削除の通知を他のPCの使用できなくなったローカルデバイスを共有設定しているPCからドライバの削除を通知されるPCに送信する前に、当該他のPCの使用できなくなったローカルデバイスを共有設定しているPCにおいて、ドライバ削除通知の送信処理をOSに行わせるか否かを指示入力する指示入力画面(指示手段)、或いは、ドライバ削除通知の通知先のPCにおいて、ドライバを削除させるか否かのメッセージ、並びに、ユーザが削除通知の送信処理の実行を指示可能な指示画面を表示してもよい。また、一回のドライバ削除の通知により、通知先のPCに複数のドライバの削除を行わせるようにしてもよい。
なお、本実施の形態では、対象のローカルデバイスのドライバをセットアップしているPCを判別し、そのPCに対してのみ共有の解除による削除指示を行ったがこれに限るものではなく、ネットワーク上のすべてのPCに対して、削除指示を行い、各PCにおいて、自身でそのドライバがセットアップされている場合に削除処理を行わせるようにしてもよい。
ステップS808では、対象ドライバが削除禁止設定されているか否かを判定する。判定方法は、ステップS1005の場合と同様である。削除禁止設定されている場合は、ステップS803に戻り、次のドライバをチェックする。
削除禁止設定されていない場合、ステップS809に移行し、削除を実行するか否かを判断する。判断方法は、ステップS1008と同様である。ここで、ドライバの削除がキャンセルされた場合は、ステップS803に戻り、次のドライバをチェックする。
ドライバの削除実行が指示された場合、ステップS810に移行し、ドライバの削除処理を実行し、削除処理を終了した後にステップS803に戻り、次のドライバをチェックする。
ステップS811では、対象ドライバが共有設定を解除したか否かを判断する。ここで、対象ドライバが共有設定を解除されていない場合は、ステップS803に戻り、次のドライバをチェックする。
対象ドライバが共有設定を解除していた場合、ステップS812に移行し、対象デバイスが使用できなくなったことを他のコンピュータにネットワークを通じて通知する。
一方、上述したようなドライバ削除通知が通知されるコンピュータでは、図18に示すように、まず、ステップS901で、削除通知を受けたか否かを判断する。通知を受けていない場合は、処理を終了する。
通知を受けた場合、ステップS902に移行し、ドライバ削除通知に対応するドライバがあるか否かを判定する。対応するドライバがない場合は、処理を終了する。
対応するドライバがある場合、ステップS903に移行し、対象ドライバが削除禁止設定されているか否かを判定する。判定方法は、ステップS1005と同様である。ドライバの削除禁止設定されている場合は、処理を終了する。
削除禁止設定されていない場合、ステップS904に移行し、メッセージを表示するか否かを判断する。メッセージ表示設定がされていない場合は、ステップS906に移行する。メッセージ表示設定されている場合、ステップS905に移行し、削除を行うか否かの確認メッセージを表示する。
そして、ステップS905で削除指示が入力指示されなかった場合は、処理を終了する。ドライバの削除指示が入力指示された場合、ステップS906に移行し、対象ドライバを削除して処理を終了する。
以上述べたように、ネットワーク上で共有されているPC及び周辺機器が表示されている画面において、ネットワーク上で共有されている周辺機器が削除或いは共有設定が解除される等して使用できなくなった場合に、不必要になったドライバを簡単な操作でアンインストールできる。また、共有設定していた周辺機器のドライバを削除したり、共有設定を解除した場合に他のコンピュータに通知することで不要なドライバを削除したりすることができる。これらの機能によって、ネットワーク上での作業効率を大幅に向上させることができる。
以下、図20〜31を参照して、周辺機器のドライバのバージョンアップを行う場合について説明する。図20は、ドライバのバージョンアップを行う処理動作を示すフローチャートである。まず、ステップS2001で、ネットワーク上の全てのPC及び周辺機器の接続状況情報を取得し、その情報を記憶する。
次に、ステップS2002で、各PCの周辺機器のドライバにセットアップ状況情報を取得する。周辺機器のドライバとは、プリンタ、スキャナ、デジタルカメラ、FAX等のドライバのことである。セットアップ状況情報の取得方法としては、例えば、各PC上で自機にインストールされているドライバ情報を取得するモジュールを起動させることで情報を収集して、それらの情報をネットワークを通じて通信することが考えられる。
図21は、セットアップされているドライバ情報構造体の一例を示す図である。PC名称、IPアドレス、OS種類、ユーザ名、デバイスドライバ数、及び各デバイスドライバの情報から構成される。各デバイスドライバ情報はプリンタやスキャナといったデバイス種類、ドライバ名、バージョン情報、出力ポート、共有名、ドライバ情報アドレスで構成される。例えば、1番目に登録されているプリンタはドライバ名がLASER-830、バージョンが1.00.00、出力ポートがローカル、共有名がLASER-830、ドライバ情報アドレスがOx10000となっている。この情報を各PC毎に記録する。
ステップS2003で、取得した情報を基にネットワーク上の全てのPC及び周辺機器の接続状況情報を表示する。この画面表示については、図12により既述したので、その詳細な説明を省略する。
図22は、ネットワーク上の各PCのドライバセットアップ状況を表示した画面の一例を示す図であり、各PCから取得したドライバ情報構造体を基に表示される。例えば、同図では、私のPCにインストールされているドライバは、プリンタが6個、スキャナが2個ある。この中で、例えば、「INKJET-10V」というプリンタは、ドライバ名が「INKJET-10V」で、バージョン番号が「1.00.00」で、出力ポート名が「\\NOTEPC01\INKJET-10V」で、名称「INKJET-10V」で共有設定されているネットワーク上で共有されているプリンタドライバであることを示している。
図20のフローチャートに説明を戻すと、ステップS2004で、周辺機器のドライバが更新されたか否かを判定する。ここで、ドライバが更新されていない場合は、処理を終了する。ドライバが更新されている場合、ステップS2005に移行する。ドライバの更新方法としては、各PC上でドライバを更新して、サーバ機器となるPCにそのドライバ情報を登録することが考えられる。または、ユーザが最新のドライバを各メーカのサイトからダウンロードして登録することも考えられる。さらに、ネットワーク上の特定の場所を指定しておいて、ドライバのバージョンチェックを行うこともできる。図23はドライバのバージョンチェック設定を行うための画面の一例である。このように、特定のURLを設定しておくことで、定期的にドライバのバージョンチェックを行って、ドライバの更新があった場合には自動的に取得するように設定できる。
ステップS2005では、更新されたドライバが最新バージョンであるか否かを判定する。そして、最新バージョンでなかった場合は、更新する通知をする必要がないので処理を終了する。最新バージョンであった場合、ステップS2006に移行する。ドライバのバージョンの判定方法としては、サーバ機器で管理している各プリンタのドライバ情報を基に行うことが考えられる。図24はそれぞれのドライバ毎にバージョン管理されている構造体の一例であり、プリンタやスキャナといったデバイス種類、デバイスのドライバ名、管理されているバージョン情報数、ドライババージョン情報、及びそれに対応するドライバ情報から構成される。管理しているバージョン情報と更新されたドライバのバージョン情報とを比較することで判定する。
ステップS2006では、更新されたドライバを使用しているPCがあるか否かを判定する。判定は、各PCから取得したデバイスドライバ情報構造体を用いて行う。ここで、対象PCがなかった場合は、処理を終了する。対象PCがあった場合、対象PCリストを表示する。図25はドライバの更新対象PCを選択するための画面の一例であり、ここで対象PCを選択して「OK」を選択すると、ステップS2007に移行し、選択されたPCに通知が行われる。また、「対象PC全てを選択」を選択すると、全ての対象PCが選択される。
ステップS2007では、選択された対象PCに対してドライバが更新されたことを通知する。図26はデバイス更新通知の情報構造体の一例であり、デバイス種類、ドライバ名、バージョン情報、出力ポートから構成される。
そして、ステップS2008に移行し、通知したPCからドライバ情報の取得要求があるか否かを判定する。要求がない場合は、或いはドライバ情報を送信する必要がないとクライアントPCから応答があった場合は、ステップS2010に移行する。要求がある場合、ステップS2009に移行し、要求があったドライバ情報をクライアントPCに送信する。
ステップS2010では、通知した全てのPCから応答があったかどうか判定する。全てのPCから応答があった場合は、処理を終了する。全てのPCから応答がまだない場合、ステップS2008に戻る。
一方、図27は、クライアント機器における処理動作を示すフローチャートである。まず、ステップS901で、サーバ機器からドライバの更新通知があったか否かを判定する。ここで、通知がない場合は、処理を終了する。
通知があった場合、ステップS902に移行し、ドライバ更新をするか否かを判定する。例えば、ドライバ更新の通知があったことをメッセージ表示してユーザが指示する方法が考えられる。図28はドライバが更新されたことを通知するメッセージの一例である。ここで、「いいえ」が選択された場合は、サーバ機器に対して対象ドライバ情報が必要でないことを通知して、処理が終了される。「はい」が選択された場合、ステップS903に移行し、サーバ機器に対して対象ドライバ情報を要求する。
次に、ステップS904で、ドライバ情報が取得できたか否かを判定する。取得できない場合は、ステップS903に戻り、サーバ機器に対して再度取得要求を送信する。ドライバ情報を取得できた場合、ステップS905に移行し、ドライバの更新処理を行う。さらに、ステップS906で最新のドライバインストール状況をサーバ機器に通知して処理を終了する。
図20及び27に示したフローチャートでは、ドライバの更新処理がされた場合に、通知を行うPCの選択をサーバ機器となるPCで行っているが、クライアント機器となるPCで自機にインストールされているドライバ状況から判定してドライバの更新処理を行う場合も考えられる。図29〜31は、クライアント機器となるPCで自機にインストールされているドライバ状況から判定して、ドライバの更新処理を行う場合のフローチャートである。
図29のステップS1201〜ステップS1205は、ステップS2001〜ステップS2005と同じである。次に、ステップS1206で、ドライバが更新されたことを全てのPCに通知して処理を終了する。通知する情報構造体も、図26に示した通りである。
そして、図30に示すフローチャートに従って、クライアント機器からの要求を処理する。まず、ステップS1301で、ドライバ情報の要求があるか否かを判定する。要求がない場合は、処理を終了する。
要求があった場合、ステップS1302に移行し、管理しているドライバ情報から要求があったドライバ情報を読み出す。そして、ステップS1303で、そのドライバ情報を要求があったクライアント機器に送信する。
一方、クライアント機器においては、図31に示すフローチャートに従って処理が行われる。このフローチャートは、図27に示すフローチャートとほぼ同じであり、ステップS1401、ステップS1403〜ステップS1407は図27のステップS901〜ステップS906で説明したとおりであるが、ステップS1402の判定があることが異なる。
このステップS1402では、ドライバ更新通知をサーバ機器から受けた場合に、ドライバ更新通知構造体から必要データを読み出して、また、自機にインストールされているドライバ情報と比較して、通知された対象ドライバがあるか否かを判定する。そして、対象ドライバがなかった場合は、この通知を無視して処理を終了する。対象ドライバがあった場合、図27に示すフローチャートと同様の処理を行う。
以上述べたように、ネットワーク上で共有されているPC及び周辺機器が表示されている画面において、周辺機器のドライバが更新された場合に、簡単な操作でドライバの更新処理を行うことができる。また、ドライバの更新情報のみを各PCに通知することで、ドライバの更新処理を行うかどうか判定できるので、ネットワーク上のトラフィックを最小限に抑えることができる。これらの機能によって、ネットワーク上での作業効率を大幅に向上させることができる。なお、上述の各実施形態において、情報処理装置の記憶手段からドライバ等をアンインストールするドライバ削除手段は、OSのアンインストールモジュールとして提供される場合もある。この場合でも、ドライバを削除するようOSを制御することにより、ドライバの削除処理を行うアプリケーションとして実装されるアンインストールプログラム(ドライバ削除手段)も本発明の範疇となる。
(その他の実施の形態)
上述した実施の形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置或いはシステム内のコンピュータに対し、上記実施の形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステム或いは装置のコンピュータ(CPU或いはMPU)に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施の形態の機能を実現することになり、そのプログラムコード自体、及びそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施の形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)或いは他のアプリケーションソフト等と共同して上述の実施の形態の機能が実現される場合にもかかるプログラムコードは本発明の実施の形態に含まれることはいうまでもない。
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施の形態の機能が実現される場合にも本発明に含まれることはいうまでもない。
なお、上記実施の形態において示した各部の形状及び構造は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその精神、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
本実施の形態の情報処理装置の概略構成を示すブロック図である。 ドライバのセットアップを行う処理動作を示すフローチャートである。 ドライバ情報構造体の一例を示す図である。 ネットワーク上のPC及び周辺機器を表示する画面の一例を示す図である。 ネットワーク上の各PCのドライバセットアップ状況を表示する画面の一例を示す図である。 セットアップするドライバを選択するための画面の一例を示す図である。 ドライバをセットアップするPCを選択するための画面の一例を示す図である。 ドライバセットアップ指示構造体の一例を示す図である。 ドライバのセットアップ確認印刷の一例を示す図である。 ドライバのチェック、さらには削除を行う処理動作を示すフローチャートである。 ドライバ情報構造体の一例を示す図である。 ネットワーク上のPC及び周辺機器を表示した画面の一例を示す図である。 アイコン303iで表されるプリンタの共有設定が解除された、或いはドライバが削除された場合に表示される画面の一例を示す図である。 チェックするデバイスを選択するための画面の一例を示す図である。 ドライバの削除禁止設定を行うための画面の一例を示す図である。 削除するドライバがあった場合に表示されるメッセージの一例を示す図である。 ドライバのチェック、さらには削除を行う処理動作を示すフローチャートである。 ドライバ削除通知が通知されたときの処理動作を示すフローチャートである。 ドライバの削除を通知する情報構造体の一例を示す図である。 ドライバのバージョンアップを行う処理動作を示すフローチャートである。 ドライバ情報構造体の一例を示す図である。 ネットワーク上の各PCのドライバセットアップ状況を表示した画面の一例を示す図である。 ドライバのバージョンチェック設定を行うための画面の一例を示す図である。 ドライバ毎にバージョン管理されている構造体の一例を示す図である。 ドライバの更新対象PCを選択するための画面の一例を示す図である。 デバイス更新通知の情報構造体の一例を示す図である。 ドライバのバージョンアップを行う処理動作を示すフローチャートである。 ドライバが更新されたことを通知するメッセージの一例を示す図である。 ドライバのバージョンアップを行う処理動作を示すフローチャートである。 ドライバのバージョンアップを行う処理動作を示すフローチャートである。 ドライバのバージョンアップを行う処理動作を示すフローチャートである。
符号の説明
1 システムバス
2 CPU
3 プログラムメモリ
4 通信制御部
5 通信ポート
6 通信回線
7 ネットワーク上の他の装置
8 外部記憶装置制御部
9 フレキシブルディスク
10 ハードディスク
11 入力制御部
12 キーボード
13 マウス
14 ビデオイメージメモリ
15 表示出力制御部
16 CRT
17 プリンタ制御部
18 プリンタ
1A 画像読み取り装置制御部
1B 画像読み取り装置

Claims (7)

  1. 周辺機器並びに外部情報処理装置と通信する情報処理装置であって、
    前記外部情報処理装置における、周辺機器を制御するデバイスドライバのセットアップ状況を取得するセットアップ情報取得手段と、
    前記セットアップ情報取得手段により取得したセットアップ情報に基づいて、前記情報処理装置にセットアップされているデバイスドライバに対応する周辺機器がネットワーク上に存在するか否かを判定する第1の判定手段と、
    前記第1の判定手段によりネットワーク上に存在しないと判定された周辺機器が、他の情報処理装置において利用可能な状態に共有設定されているか否かを判定する第2の判定手段と、
    前記第2の判定手段により、前記周辺機器が共有設定されていると判定された場合に、前記外部情報処理装置において前記周辺機器に対応するデバイスドライバを削除させるドライバ削除通知を前記外部情報処理装置に対してい、前記第2の判定手段により、前記周辺機器が共有設定されていないと判定された場合には、前記外部情報処理装置において前記周辺機器に対応するデバイスドライバを削除させるドライバ削除通知を前記外部情報処理装置に対して行わないドライバ削除通知手段とを備えたことを特徴とする情報処理装置。
  2. 周辺機器並びに外部情報処理装置と通信する情報処理装置における情報処理方法であって、
    前記外部情報処理装置における、周辺機器を制御するデバイスドライバのセットアップ状況を取得するセットアップ情報取得手順と、
    前記セットアップ情報取得手順により取得したセットアップ情報に基づいて、前記情報処理装置にセットアップされているデバイスドライバに対応する周辺機器がネットワーク上に存在するか否かを判定する第1の判定手順と、
    前記第1の判定手順によりネットワーク上に存在しないと判定された周辺機器が、他の情報処理装置において利用可能な状態に共有設定されているか否かを判定する第2の判定手順と、
    前記第2の判定手順により、前記周辺機器が共有設定されていると判定された場合に、前記外部情報処理装置において前記周辺機器に対応するデバイスドライバを削除させるドライバ削除通知を前記外部情報処理装置に対してい、前記第2の判定手順により、前記周辺機器が共有設定されていないと判定された場合には、前記外部情報処理装置において前記周辺機器に対応するデバイスドライバを削除させるドライバ削除通知を前記外部情報処理装置に対して行わないドライバ削除通知手順とを有することを特徴とする情報処理方法。
  3. 前記ドライバ削除通知手順は、一回のドライバ削除通知により、通知先の外部情報処理装置に複数のドライバを削除させるドライバ削除通知を行うことを特徴とする請求項に記載の情報処理方法。
  4. 前記ドライバ削除通知手順により前記ドライバ削除通知を行う前に、前記外部情報処理装置に削除を実行させるか否かをユーザに確認する確認手順を有することを特徴とする請求項に記載の情報処理方法。
  5. ライバの削除の禁止を設定する指示が可能な削除禁止設定指示手順を有することを特徴とする請求項に記載の情報処理方法。
  6. 前記第1の判定手順の前に、前記情報処理装置にセットアップされているデバイスドライバに対応する周辺機器がローカルデバイスであるか否か判定する第3の判定手順を有することを特徴とする請求項に記載の情報処理方法。
  7. 請求項2乃至6のいずれか1項に記載の情報処理方法の手順をコンピュータに実行させるためのプログラム。
JP2004323971A 2000-12-22 2004-11-08 情報処理装置、方法及びプログラム Expired - Fee Related JP4393348B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004323971A JP4393348B2 (ja) 2000-12-22 2004-11-08 情報処理装置、方法及びプログラム

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000391201 2000-12-22
JP2004323971A JP4393348B2 (ja) 2000-12-22 2004-11-08 情報処理装置、方法及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001355016A Division JP3977059B2 (ja) 2000-12-22 2001-11-20 情報処理装置、方法、及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2005092895A JP2005092895A (ja) 2005-04-07
JP4393348B2 true JP4393348B2 (ja) 2010-01-06

Family

ID=34466567

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004323971A Expired - Fee Related JP4393348B2 (ja) 2000-12-22 2004-11-08 情報処理装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4393348B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4802613B2 (ja) * 2005-08-25 2011-10-26 富士ゼロックス株式会社 インストールシステム及びインストールプログラム
JP4971610B2 (ja) * 2005-09-01 2012-07-11 キヤノン株式会社 デバイスドライバを管理するためのプログラムおよび方法と情報処理装置
JP4756994B2 (ja) * 2005-10-27 2011-08-24 キヤノン株式会社 ネットワークプリントシステム及びネットワーク周辺装置及び情報処理装置とプログラム
JP4865299B2 (ja) * 2005-11-02 2012-02-01 キヤノン株式会社 情報処理装置及び情報処理方法及びそのプログラム
KR101324188B1 (ko) * 2008-07-01 2013-11-07 삼성전자주식회사 화상형성장치, 호스트 클라이언트, 화상형성시스템 및화상형성시스템의 관리방법
CN102426776B (zh) * 2011-09-15 2015-07-29 北京星河易达科技有限公司 机动车代驾网络监控方法
JP6061591B2 (ja) * 2012-09-27 2017-01-18 キヤノン株式会社 情報処理装置、制御方法、及びプログラム

Also Published As

Publication number Publication date
JP2005092895A (ja) 2005-04-07

Similar Documents

Publication Publication Date Title
JP3977059B2 (ja) 情報処理装置、方法、及び制御プログラム
JP4428844B2 (ja) 情報処理装置、データ処理方法及び記録媒体
JP3870065B2 (ja) ネットワークシステム、情報処理装置、情報処理方法、及び制御プログラム
JP5708017B2 (ja) 情報処理システム、情報処理機器、プログラム
JP2011028482A (ja) 情報処理装置、情報処理方法、制御プログラム
JP2010135910A (ja) ユーザー設定情報管理システム、ユーザー設定情報管理方法、プログラム、記憶媒体
JP2005322971A (ja) 情報処理システム及びそれに用いる情報処理方法並びに情報処理プログラム
JP4393348B2 (ja) 情報処理装置、方法及びプログラム
EP1853056A1 (en) Information processing apparatus and method
JP5067877B2 (ja) 管理装置、管理方法、及びプログラム
JP5140553B2 (ja) 情報処理装置及びこれを含む画像形成システム
JP4709033B2 (ja) 情報処理装置、情報処理方法
JP2006331072A (ja) サーバ装置、データ処理装置、アップロード処理情報およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
US20090195823A1 (en) Document management apparatus and document management method
JP2010272936A (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP2002197045A (ja) ネットワークシステム、情報処理装置、方法、及びコンピュータ読み取り可能な記憶媒体
JP4632450B2 (ja) 通信装置及びその制御方法
JP2002189692A (ja) ネットワークシステム、情報処理装置、方法、及びコンピュータ読み取り可能な記憶媒体
JP4957506B2 (ja) 管理プログラム、情報処理装置および情報処理システム
JP2003223295A (ja) 印刷システム及びその印刷資源の利用方法
JP2008176674A (ja) 電子機器、サービス提供方法及びプログラム
US7969973B2 (en) Information processing apparatus, method for controlling the same, and program
JP5140552B2 (ja) 情報処理装置及びこれを含む画像形成システム
JP2014170496A (ja) 情報処理装置、情報処理システム及びプログラム
JP2005197969A (ja) 情報処理装置、デバイス設定情報管理方法およびデバイス設定情報管理プログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090127

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090319

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091006

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: 20091013

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20121023

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131023

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees